新浪微博登录过程

来源:互联网 发布:晟元数据安全 编辑:程序博客网 时间:2024/04/29 18:53

下面简单介绍新浪微博的登录 过程:


在登录之前我们需要先从新浪服务器获取两个变量:servertime,nonce。其中servertime中新浪的服务器时间,nonce是一 个随机生成的字符串。获取的需要通过这样一个网络接口:http://login.sina.com.cn/sso/prelogin.php?entry=miniblog&callback=sinaSSOController.preloginCallBack&user="+username+"&client=ssologin.js(v1.3.12)

其中username是你的用户名。
获取到我们需要的内容后,接下来就是加密的过程了。加密使用的是通用的SHA1加密算法
  • 把密码进行一次SHA1加密,结果再进行一次SHA1加密
  • 把经过两次SHA1加密的结果附上servertime,nonce再进行一次SHA1加密
  • 加密的结果作为登录密码
登录地址没有变,仍使用:http://login.sina.com.cn/sso/login.php?client=ssologin.js(v1.3.12)

但参数要复杂一点了:
service:选择服务,我们这里使用的新浪微博:miniblog
client:ssologin.js%28v1.3.12%29
entry:miniblog
encoding:utf-8
gateway:1
savestate:0
useticket:1,这里使用到了登录票据。
username:你的用户名
servertime:上步得到的服务器时间
nonce:上步得到的随机字符串
pwencode:wsse(没整明白是个什么东西,不过从来不变)
password:加密后的密码
url:一个回调地址
returntype:META(使用中没有发生变化)
ssosimplelogin:1
example:
http://login.sina.com.cn/sso/login.php?client=ssologin.js(v1.3.12)&service:miniblog&client:ssologin.js%28v1.3.12%29&entry:miniblog&encoding:utf-
8&gateway:1&savestate:0&useticket:1&username: 用户 名&servertime:1308647606&nonce:L8QJHE&pwencode:wsse&password:f435c677294851d13794359145e6f96826c1
c3d2&url:http://www.baidu.com&returntype:META&ssosimplelogin:1
0 0
原创粉丝点击