![]() |
1
2
嗯,iphone id看起来像一个十六进制字符串,所以将其转换为二进制和异或字节应该可以做到这一点。您可以根据需要将结果存储为数组、十六进制字符串或base-64编码字符串。 然而,您将其称为“认证令牌”的方式有点令人担忧。会话ID必须是不可预测的。您可以考虑在服务器上生成一个加密随机数据数组,而不是一个guid。 编辑
遗憾的是,似乎.NET没有内置的方法来转换十六进制字符串,但之前已经讨论过这个主题: Convert byte array to hex string and vice versa
|
![]() |
2
2
正如附带说明,我使用的所有“auth-token”机制(至少)都将一个常量值(一个“秘密”)与当前时间连接起来,然后将它们散列在一起,然后发送散列和日期。然后,服务器从接收日期和已知的“秘密”重新构造散列,然后将其与接收的散列(签名)进行比较。 我这里的观点是“与日期连接”——这使得每次生成的签名都不同,理论上这应该更安全。 |
![]() |
3
1
您可以将这些十六进制数字连接起来,而不是丢失信息的XORING。 |
![]() |
4
0
为什么你甚至需要guid?电话ID是唯一的,guid似乎没有添加值。 |
![]() |
5
0
我想你可以用双向算法。这意味着该算法可以像base64、sha256、aes那样进行编码和解码。 |
![]() |
feasega · 聚合物模拟-2个节点之间的最短路线,适用于所有节点 5 月前 |
![]() |
Alisa Petrova · 在有向图中更改一对顶点以创建循环 5 月前 |
![]() |
b39b332d · 使用C++标准库实现高效间隔存储 9 月前 |
![]() |
ABGR · 二叉树的直径——当最长路径不通过根时的失败案例 9 月前 |
![]() |
EpicAshman · 数独棋盘程序中同一列和同一行出现两次的数字 10 月前 |