人气 117

[游戏程序] 【转】RSA、SHA1这两个放在一块是什么意思呢? [复制链接]

九艺网 2017-3-10 17:00:40

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
原帖地址:http://kjam.org/post/117/作者:KJRSA_SHA1 and OpenSocialOAuth 技术作为 OpenSocial 采用的 Auth 方案. 其中签名技术有 HMAC_SHA1 , RSA_SHA1 和 Plain 三种 .其中 RSA_SHA1 的方法. 初一看没觉得有什么.仔细想想, RSA是非对称密钥技术, SHA1是签名算法, 这两个放在一块是什么意思呢?整理思路, 理解如下:1. 当一个请求的数据到达到我的网站, 首先计算一下的请求中所有数据的SHA1值(除了签名以外)2. 用RSA算法中的公钥来解开签名数据, 得到解密后的签名值3. 比较两个值如果两值相等, 说明发送请求的主机持有合法私钥. 是来自SNS网站.(iGoogle 和 Orkut 当前使用这种签名技术, myspace 使用 HMAC_SHA1 签名)回到于python的相关内容, 标准库中有SHA1的lib可以使用, RSA没有, 不得不求助于PyCrypto.在GAE环境中, PyCrypto不能使用. 也不能将这个库整体上传, 那样太大了, 另外一个原因是它也包含很多 C ext.由于iGoogle给我们的公钥格式是PEM格式(一种文件格式, 学名叫X509), PyCrypto不能解码得到我们所需的公钥.解码这种格式需要 tlslite 这个 lib.最后, 花了点时间, 从两个lib中提取到了10个py文件, 不需要依赖 C ext, 可以在GAE上使用, 在这里下载 http://kjam.org/medias/files/117/RSA_SHA1.zip.
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|小黑屋|九艺游戏动画论坛 ( 津ICP备2022000452号-1 )

GMT+8, 2024-6-15 06:55 , Processed in 0.066977 second(s), 24 queries .

Powered by Discuz! X3.4  © 2001-2017 Discuz Team.