屏蔽密码字符串

本文关键字:字符串 密码 屏蔽 | 更新日期: 2023-09-27 18:32:42

我正在创建一个 C# Windows 窗体应用程序,该应用程序使用 MSTSC 单击一下即可将我登录到我的服务器。我在纯文本代码中有我的管理员名称和密码,想知道有没有办法屏蔽/隐藏密码?我将代码存储在我的 Dropbox 中,并希望它不可读。

    private void RunAsAdmin(string server)
    {
        Process rdcProcess = new Process();
        rdcProcess.StartInfo.FileName = Environment.ExpandEnvironmentVariables(@"%SystemRoot%'system32'cmdkey.exe");
        rdcProcess.StartInfo.Arguments = "/generic:TERMSRV/192.168.0.217 /user:" + "Administrator" + " /pass:" + "myPassword";
        rdcProcess.Start();

屏蔽密码字符串

使用此函数encryptdecrypt密码。

 Public Function ConvertPassword(ByVal sPassword As String)
        Dim sTempChar As String
        Dim iCount As Integer
        For iCount = 1 To Len(sPassword)
            If Asc(Mid$(sPassword, iCount, 1)) < 128 Then
                sTempChar = CType(Asc(Mid$(sPassword, iCount, 1)) + 128, String)
            ElseIf Asc(Mid$(sPassword, iCount, 1)) > 128 Then
                sTempChar = CType(Asc(Mid$(sPassword, iCount, 1)) - 128, String)
            End If
            Mid$(sPassword, iCount, 1) = Chr(CType(sTempChar, Integer))
        Next iCount
        Return sPassword
    End Function

我同意将密码存储在文件中是一个坏主意。我有时做的是对其进行base64编码。我意识到它非常不安全,但我只是想防止普通读者看到密码。

作为答案的一部分,您可以通过在例如Windows窗体文本框中设置以下属性来屏蔽密码:

TextBox.UseSystemPasswordChar = true;