Las*_*apa 3 java algorithm chat
我正在创建一个聊天应用程序.我想在不同的XML文件中保存对话.我正在考虑为两个名称(发件人和接收者)生成一个唯一的密钥,并用该密钥保存XML文件作为文件名.
有算法生成那种密钥吗?
我想把两个单词组合起来作为关键.但我想知道最佳做法.
更新
我想为同一个两个用户再次获得相同的密钥.
你不能只把这两个词连接起来作为关键.让我们假设名为1234和5678的用户正在聊天,这将给出密钥12345678.但如果12345和678在哪里聊天呢?这会给同样的钥匙!
所以通常做的是在你想要组合的两件事之间添加不应该发生的东西.也许名称中不允许使用某些特殊字符.更好的方法是使用用户的ID,因为它可能不会随着时间的推移而改变,而且通常只包含数字.
因此,如果上面的示例是userIds,您可以添加一个分隔符,它们之间有一些字母(适用于文件名).例如,只是一个下划线_.现在键是1234_5678和12345_678,因此可以区分它们.
由于您现在已经添加了两个用户始终应生成相同密钥的要求,因此您可以先订购这两个值.所以1234发送到5678应该给出与5678发送到1234相同的结果.