c++

C++通过ASCII码实现加解密技术

小樊
102
2024-07-21 12:58:04
栏目: 编程语言

在C++中,可以通过简单的ASCII码加解密技术来加密和解密字符串。下面是一个简单的示例代码,用于实现基于ASCII码的加密和解密功能:

#include <iostream>
#include <string>

using namespace std;

// 加密函数
string encrypt(string text, int key) {
    string result = "";
    for (int i = 0; i < text.length(); i++) {
        result += char(int(text[i]) + key);
    }
    return result;
}

// 解密函数
string decrypt(string text, int key) {
    string result = "";
    for (int i = 0; i < text.length(); i++) {
        result += char(int(text[i]) - key);
    }
    return result;
}

int main() {
    string text = "Hello, world!";
    int key = 3;

    string encryptedText = encrypt(text, key);
    string decryptedText = decrypt(encryptedText, key);

    cout << "Original Text: " << text << endl;
    cout << "Encrypted Text: " << encryptedText << endl;
    cout << "Decrypted Text: " << decryptedText << endl;

    return 0;
}

在这个示例中,我们定义了两个函数encryptdecrypt,分别用于加密和解密字符串。在encrypt函数中,我们将字符串中的每个字符的ASCII码加上一个密钥值,得到加密后的字符;在decrypt函数中,我们将加密后的字符串中的每个字符的ASCII码减去密钥值,得到解密后的字符。

main函数中,我们定义了一个字符串text和一个密钥值key,然后分别对这个字符串进行加密和解密操作,并输出结果。

请注意,这只是一个简单的示例,实际上这种基于ASCII码的加密方法并不是很安全,可以很容易地被破解。在实际应用中,建议使用更加安全的加密算法,如AES、DES等。

0
看了该问题的人还看了