最简单但挺实用的XOR加密

举报
Amrf 发表于 2020/05/14 15:54:45 2020/05/14
【摘要】 void encrypt(std::vector<char>& msg,std::string const& key){ if(!key.size()) return; for (std::string::size_type i = 0; i < msg.size(); ++i) msg[i] ^= key[i%key.size()]; ...

       

void encrypt(std::vector<char>& msg,std::string const& key)
{
    if(!key.size())
        return;
    
    for (std::string::size_type i = 0; i < msg.size(); ++i)
        msg[i] ^= key[i%key.size()];
    return;
}

需要注意的是std::ios_base::binary输入输出以及约定好是否加密bom头;

参考:

http://www.cplusplus.com/forum/windows/128374/

http://www.cplusplus.com/articles/Ly86b7Xj/


引申阅读:

加盐密码哈希:如何正确使用 https://www.cnblogs.com/zhangxiaolei521/p/5814598.html


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。