小编Drk*_*e72的帖子

编码/解码 RealVNC 密码

我正在尝试编写可以远程更改另一个盒子上的 RealVNC 密码的 C# 应用程序。

目前有效的是,我可以从已经更改的框中提取密码,将其存储为十六进制字符串,然后将其发送到另一个框,然后以这种方式更改密码,但我需要能够更改密码或即时随机化。

我在创建正确的二进制文件以放置在注册表中时遇到问题。

我知道 VNC 密钥:

byte[] Key = { 23, 82, 107, 6, 35, 78, 88, 7 };
Run Code Online (Sandbox Code Playgroud)

所以使用上面的密钥并传递“1234”作为密码使用以下代码进行加密:

public static byte[] EncryptTextToMemory(string Data, byte[] Key)
{
    try
    {
        MemoryStream mStream = new MemoryStream()

        DESCryptoServiceProvider desProvider = new DESCryptoServiceProvider();
        desProvider.Mode = CipherMode.ECB;
        desProvider.Key = Key;

        CryptoStream cStream = new CryptoStream(mStream,
            desProvider.CreateEncryptor(),
            CryptoStreamMode.Write);

        byte[] toEncrypt = new ASCIIEncoding().GetBytes(Data);

        cStream.Write(toEncrypt, 0, toEncrypt.Length);
        cStream.FlushFinalBlock();

        byte[] ret = mStream.ToArray();

        cStream.Close();
        mStream.Close();

        return ret;
    }
    catch (CryptographicException ex)
    {
        MessageBox.Show("A …
Run Code Online (Sandbox Code Playgroud)

c# des .net-2.0

3
推荐指数
1
解决办法
4808
查看次数

标签 统计

.net-2.0 ×1

c# ×1

des ×1