本文整理汇总了VB.NET中System.Security.Cryptography.AsymmetricKeyExchangeDeformatter类的典型用法代码示例。如果您正苦于以下问题:VB.NET AsymmetricKeyExchangeDeformatter类的具体用法?VB.NET AsymmetricKeyExchangeDeformatter怎么用?VB.NET AsymmetricKeyExchangeDeformatter使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了AsymmetricKeyExchangeDeformatter类的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的VB.NET代码示例。
示例1: New
' 导入命名空间
Imports System.Security.Cryptography
Namespace Contoso
Public Class ContosoDeformatter
Inherits AsymmetricKeyExchangeDeformatter
Private rsaKey As RSA
' Default constructor.
Public Sub New()
End Sub
' Constructor with the public key to use for encryption.
Public Sub New(ByVal key As AsymmetricAlgorithm)
SetKey(key)
End Sub
' Set the public key for encyption operations.
Public Overrides Sub SetKey(ByVal key As AsymmetricAlgorithm)
If (Not key Is Nothing) Then
rsaKey = CType(key, RSA)
Else
Throw New ArgumentNullException("key")
End If
End Sub
' Disallow access to the parameters of the formatter.
Public Overrides ReadOnly Property Parameters() As String
Get
Return Nothing
End Get
Set(ByVal Value As String)
End Set
End Property
' Create the encrypted key exchange data from the specified input
' data. This method uses the RSACryptoServiceProvider only. To
' support additional providers or provide custom decryption logic,
' add logic to this member.
Public Overrides Function DecryptKeyExchange(
ByVal rgbData() As Byte) As Byte()
Dim decryptedBytes() As Byte
If (Not rsaKey Is Nothing) Then
If (TypeOf (rsaKey) Is RSACryptoServiceProvider) Then
Dim rsaProvider As RSACryptoServiceProvider
rsaProvider = CType(rsaKey, RSACryptoServiceProvider)
decryptedBytes = rsaProvider.Decrypt(rgbData, True)
End If
' Add custom decryption logic here.
Else
Throw New CryptographicUnexpectedOperationException(
"Cryptography_MissingKey")
End If
Return decryptedBytes
End Function
End Class
End Namespace
输出:
Data to encrypt : Sample Contoso encryption application. Encrypted data: Kh34dfg-(*&834d+3 Data decrypted : Sample Contoso encryption application. This sample completed successfully; press Exit to continue.