我用cookie加密的用户登录状态 大家看看有没有什么规律

rayyu1989 2012-04-27 08:49:51
以下代表同1个人, 数据具有时效性 根据服务端时间判断

u=wDVMtZm988a/slqByNEMP3WxDKxAjPH1JCuuEKi7MGmVxamsehmq4zvO9Ws/Rvp9Vkrj8zNc84NBMPTpPBJ8bA==&i=H2-C3-AF-4A-83-72-36-46-6G-54-73-54-71-26-6A-E5

u=hy7emed5bThNINk1BhIWeAwf2Us/2ubzBFRsfZA/QRZCUOmniYWzXyZatQSc/Zw9DTyveKFgUIRZYONnfQuZMg==&i=G5-7G-63-2E-54-66-67-4C-6F-56-56-63-75-AA-5F-EG

u=eunGcWe8Lfu25UHgVRhQJtj7eDCC+M17wTXSzsdvTiasQ/2x2y5nyeBfWZwqssWOD0+iHum9pgweF0bTsqrJ7g==&i=GD-8A-D8-2C-66-34-3A-73-4A-4G-61-3B-54-56-DG-EF

u=1giMaKz7PQQT12rKmtxiWtHGow0h3XCrPPWm33+VXZd0Q5ft0AmpQQsEfMg/aKMpzlnxu9AnJSsSd/Tk9y4WGA==&i=34-D2-88-6E-8G-48-64-72-36-31-67-3B-6F-7H-1E-47

u=0Z1hCrcFFsgUMv7ZjhK6bpMZEsPJlnKCvHvPqVtTyiasWlgPy2GLjN56ChNi1sjoLkk2ZGsdGtKFi8/3TX+VFg==&i=6D-F2-DG-1A-6C-4C-5A-7H-42-41-73-38-62-3F-3D-28

u=wZFn7EOLvcnEKqT/d0wMAlIWKD7u860IMf6R6ZlWPIZ8x/x3vlskggpyJwm5dEGyIHYiFl6J0LWGBZ3NjYWWxA==&i=D3-E1-C7-61-11-58-38-3A-77-74-4F-4G-55-7F-83-75

u=Cs1si0dToqBEsDy1bWnqcDRAMaKwzL5bmW/mb7rIWMUL8bTBWtohFdh5inTtkotg0kbyMdl4g1JkcRSRqxYngg==&i=G2-DA-5B-C8-G3-6C-6G-43-6D-42-6E-65-32-AC-BF-7H

u=jSABLbMugdzpftZe6xZ6e29vDRRuRm9bKZQwgPg9pMBKjaRCVFG5roGb3+e7hrZYXkZ2U7cHApQNN780qnNYjA==&i=E5-6C-47-33-DG-54-62-34-31-68-67-58-4D-3A-E6-D3

u=HXkwLTMSQZtncXBogLuv5wI7JVZVjOUJWIK0/3nRwz+ap/Qr9VACxlOxFh0oS0zFMulWG22JPKB2Hn88oOWG3A==&i=3F-EC-64-87-HC-72-55-55-6E-45-4A-47-77-D7-8B-6A

u=tpXOFqKBYthUA0s1rJ+5Bo3I2ASJz58bTwFUD/xJY8bZbhZUzt4HNc8MqmhYbO1pbWnTm9uY+lncynvjxaAmwQ==&i=4C-31-6B-B7-8H-4D-55-53-67-47-5B-63-78-4A-GG-6B
...全文
167 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
rayyu1989 2012-04-28
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

唯一的规律就是==&i=后面的格式长度是一样的
[/Quote]
i确实是固定长度的

[Quote=引用 2 楼 的回复:]

你想干坏事吗?
[/Quote]

这个是我自己写的加密哦 不是破解别人的

[Quote=引用 3 楼 的回复:]

u和i后面的内容长度都一样
[/Quote]
i是固定的

上面用到主要用到 TripleDESC 、 2次md5 以及其他的
我试过 循环1万次 大概需要2秒(估算的,不是程序运行)一般网页运行只需要运行1次就可以了 所以 效率方面是可以忍受的
bdmh 2012-04-28
  • 打赏
  • 举报
回复
u和i后面的内容长度都一样
xiaoxin4321 2012-04-28
  • 打赏
  • 举报
回复
你想干坏事吗?
熙风 2012-04-28
  • 打赏
  • 举报
回复
唯一的规律就是==&i=后面的格式长度是一样的
rayyu1989 2012-04-28
  • 打赏
  • 举报
回复
时间戳,md5值 是不固定的 验证使用

取出来用的只有id和用户名
rayyu1989 2012-04-28
  • 打赏
  • 举报
回复
大致的加密过程为


第一层:TripleDESC 加解密 密匙由 参数i 和 useragent 和 用户名组成 总共24字节

TripleDESC解密后 如》 BC75C4C659E08D738FEF2494625FEE6001rayyu2|634712220835990000

1-32位是 md5 :BC75C4C659E08D738FEF2494625FEE60
33位是1或者0 :0 判读是1小时还是1周 0表示1小时
34位开始的数字是用户id :1
非数字开始到 | 是用户名:rayyu2
|后是时间戳:634712220835990000 《cookie写入的时间

md5是时间戳+用户名+id+ 1或者0组成的 防止第一层被破后数据被伪造

我认为第一层和第二层 都可以独当一面 ,但是放1起都用 也不影响多少性能 所以都用了





这个加密算法里只放了用户id,用户名,时间戳,md5值, 只用于代替session或者cache 存放用户登录状态

求专家指点

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧