.NET开发

本类阅读TOP10

·NHibernate快速指南(翻译)
·vs.net 2005中文版下载地址收藏
·【小技巧】一个判断session是否过期的小技巧
·VB/ASP 调用 SQL Server 的存储过程
·?dos下编译.net程序找不到csc.exe文件
·通过Web Services上传和下载文件
·学习笔记(补)《.NET框架程序设计(修订版)》--目录
·VB.NET实现DirectDraw9 (2) 动画
·VB.NET实现DirectDraw9 (1) 托管的DDraw
·建站框架规范书之——文件命名

分类导航
VC语言Delphi
VB语言ASP
PerlJava
Script数据库
其他语言游戏开发
文件格式网站制作
软件工程.NET开发
使用VB.NET加密文件

作者:未知 来源:月光软件站 加入时间:2005-2-28 月光软件站

      本文介绍使用XOR加密算法对数据进行加密, 这是一种很简单的算法,使用了尽量简单的VB编程方法,通俗易懂。我们可以采用更安全的算法如DES算法,IDEA算法等。各位如有任何见解,请不吝赐教。

    在窗体中添加一RichTextBox,设置其Name属性为SourceFile,Multiline属性为True,ScrollBars属性为3-both。添加一MainMenu,设置一菜单项“文件”,其下有“打开”,“保存”,“加密”,“解密”,“算子”等子菜单项。
以下是大致的程序界面:

Public Class Form1
    Inherits System.Windows.Forms.Form
    Dim strNum As String
 Private Sub Form1_Load(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles MyBase.Load
        strNum = "password"
 End Sub
 
 Private Sub Form1_Resize(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles MyBase.Resize
        SourceFile.Width = Form1.DefInstance.Width
        SourceFile.Height = Form1.DefInstance.Height
    End Sub
    '解密过程,对xor算法而言,解密和加密过程是完全一样的
    Private Function XorOut(ByRef strNum As String, ByRef strText As String) As String
        Dim i As Integer
        Dim XorValue1 As Short
        Dim XorValue2 As Short
        Dim strResult As String
        For i = 1 To Len(strText)
            XorValue1 = Asc(Mid(strText, i, 1))
            XorValue2 = Asc(Mid(strNum, (i Mod Len(strNum)) + 1, 1))
            strResult = strResult & Chr(XorValue1 Xor XorValue2)
        Next
        XorOut = strResult
    End Function

    Private Sub MenuDeEncrypt_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuDeEncrypt.Click
        SourceFile.Text = XorOut(strNum, (SourceFile.Text))
    End Sub

    Private Sub MenuEncrypt_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuEncrypt.Click
        SourceFile.Text = XorOut(strNum, (SourceFile.Text))
    End Sub

    Private Sub MenuOpen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuOpen.Click
        Dim openFile1 As New OpenFileDialog
        ' Determine whether the user selected a file from the OpenFileDialog.
        If (openFile1.ShowDialog() = DialogResult.OK) _
            And (openFile1.FileName.Length > 0) Then

            ' Load the contents of the file into the RichTextBox.
            SourceFile.LoadFile(openFile1.FileName, _
                RichTextBoxStreamType.PlainText)
        End If
    End Sub

    Private Sub MenuSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuSave.Click
        ' Create a SaveFileDialog to request a path and file name to save to.
        Dim saveFile1 As New SaveFileDialog

        ' Initialize the SaveFileDialog to specify the RTF extension for the file.
        'saveFile1.DefaultExt = "*.rtf"
        'saveFile1.Filter = "RTF Files|*.rtf"

        ' Determine if the user selected a file name from the saveFileDialog.
        If (saveFile1.ShowDialog() = DialogResult.OK) _
            And (saveFile1.FileName.Length) > 0 Then

            ' Save the contents of the RichTextBox into the file.
            SourceFile.SaveFile(saveFile1.FileName, _
                RichTextBoxStreamType.PlainText)
        End If
    End Sub

    Private Sub MenuNum_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuNum.Click
        strNum = InputBox("请输入加密算子", "设置加密算子")
    End Sub
End Class

 




相关文章

相关软件