mod_auth_tkt - java实现

有没有人实现使用Java mod_auth_tkt饼干一代?

我卡在如何产生iptstamp在Java和hextimestamp(可以在PHP中使用的包装函数来完成)。

用于产生cookie中的算法是如下:

cookie := digest + hextimestamp + user_id + '!' + token_list + '!' + user_data digest := MD5(digest0 + key) digest0 := MD5(iptstamp + key + user_id + '' + token_list + '' + user_data)

  • iptstamp是一个8字节长字节数组,字节0-3填充有客户端的IP地址作为网络字节顺序的二进制数,字节4-7填充有时间戳以网络字节顺序的二进制数。
  • hextimestamp是iptstamp使用8个字符长的十六进制数表示的时间戳。
  • token_list是该用户的访问令牌的一个可选的逗号分隔的列表。
    如果TKTAuthToken设置为一个特定的区域被选中该列表。
  • user_data是可选

--------------解决方案-------------

只需将IP地址转换为4个字节,追加时间戳。

iptstamp = ip_chars + ts_chars

http://code.cmlenz.net/diva/changeset/173/branches http://www.mail-archive.com/modauthtkt-users@lists.sourceforge.net/msg00003.html

使用以下获得网络字节顺序。

ByteBuffer bb = ByteBuffer.allocate(4096);
bb.order(ByteOrder.BIG_ENDIAN);

看到

网络在线订购短(JAVA)

分类:java的 时间:2015-03-15 人气:0
本文关键词: Java中,MOD AUTH
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 1.498 (s). 10 q(s)