zoukankan      html  css  js  c++  java
  • 凯撒加密/解密算法(VC) Mr

    /***********加密CString并写入文件(加法加密)************/
    CFile fileWrite;
    CString m_strEncryption = _T("需要加密的信息");
    int count = m_strEncryption.GetLength();
    BYTE* m_byteRead = new BYTE[count];
    BYTE* m_byteWrite = new BYTE[count*2];
    m_byteRead = (BYTE*)m_strEncryption.GetBuffer(count);
    for (int i = 0, k = 0, j = 1; i < count; i++, k = k + 2, j = j + 2)
    {
      m_byteWrite[k] = (byte)((m_byteRead[i] + 参数(密钥)) % 128 + 128);
      m_byteWrite[j] = (byte)((m_byteRead[i] + 参数(密钥)) / 128);
    }

    if(fileWrite.Open(输出路径, CFile::modeCreate | CFile::modeWrite))
    {
      fileWrite.Write(m_byteWrite,count*2);
      fileWrite.Write("\r\n",2);
    }
    fileWrite.Close();

    m_strEncryption.ReleaseBuffer();
    delete[] m_byteWrite;

    PS:解密及其他方式的加密解密可见《凯撒加密/解密算法(C#)》,将其稍作修改就可适用于VC。

  • 相关阅读:
    大数板子
    数位dp
    BM算法
    牛客小白月赛7
    划分树
    可持久化线段树
    素数
    一些数学公式
    线性基
    ConcurrentHashMap 并发HashMap原理分析
  • 原文地址:https://www.cnblogs.com/miaohw/p/2147357.html
Copyright © 2011-2022 走看看