DSA Crypto Service Provider Demo : Cryptography « Security « VB.Net






DSA Crypto Service Provider Demo

Imports System
Imports System.IO
Imports System.Security.Cryptography
Imports System.Text

Public Class DSASign
    
    Public Shared Sub Main(ByVal CmdArgs() As String)
        If CmdArgs.Length <> 3 Then
            Console.WriteLine("usage: DSASign <key xml> <data> <sign>")
            End
        End If

        Dim xkey As String = LoadString(CmdArgs(0))
        
        
        
        Dim fs As FileStream = File.OpenRead(CmdArgs(1))
        Dim dsa As DSACryptoServiceProvider = New DSACryptoServiceProvider
        dsa.FromXmlString(xkey)
        Dim sig() As Byte = dsa.SignData(fs)
        fs.Close()
        SaveString(CmdArgs(2), Convert.ToString(sig))
        Console.WriteLine("Signature in {0}} file", CmdArgs(2))
    End Sub

    Shared Public Sub SaveString(ByVal fname As String, ByVal data As String)
        Dim datas() As Byte = (New ASCIIEncoding).GetBytes(data)

        Dim fs As FileStream = File.OpenWrite(fname)
        fs.SetLength(0)
        fs.Write(datas, 0, datas.Length)
        fs.Close()

    End Sub
    
    Shared Public Function LoadString(ByVal fname As String) As String
        Dim finfo As FileInfo = New FileInfo(fname)
        Dim length As String = CType(finfo.Length, String)
        Dim buf() As Byte = New Byte(length) {}
        Dim fs As FileStream = File.OpenRead(fname)
        fs.Read(buf, 0, buf.Length)
        fs.Close()

        Return (New ASCIIEncoding).GetString(buf)
    End Function

End Class

           
       








Related examples in the same category

1.Test Hash Key
2.Check X509Certificate file
3.SHA1 Crypto Service Provider Demo
4.DSA Verify Demo
5.Generate DSA Key and valueGenerate DSA Key and value