Chilkat Examples

ChilkatHOMEAndroid™Classic ASPCC++C#Mono C#.NET Core C#C# UWP/WinRTDataFlexDelphi ActiveXDelphi DLLVisual FoxProJavaLianjaMFCObjective-CPerlPHP ActiveXPHP ExtensionPowerBuilderPowerShellPureBasicPythonRubySQL ServerSwiftTclUnicode CUnicode C++Visual Basic 6.0VB.NETVB.NET UWP/WinRTVBScriptXojo PluginNode.jsExcel

VB.NET UWP/WinRT Examples


ASN.1
Amazon S3
Amazon S3 (new)
Amazon SES
Amazon SNS
Amazon SQS
Azure Cloud Storage
Azure Service Bus
Bounced Email
Box
CSR
CSV
Certificates
Compression
DKIM / DomainKey
DSA
Diffie-Hellman
Digital Signatures
Dropbox
ECC
Email Object
Encryption
FTP
Facebook
Firebase
GeoOp
Google APIs
Google Calendar
Google Cloud Storage
Google Drive
Gzip
HTML-to-XML/Text
HTTP
HTTP Misc
IMAP
JSON
JSON Web Encryption (JWE)
JSON Web Signatures (JWS)
JSON Web Token (JWT)

Java KeyStore (JKS)
MHT / HTML Email
MIME
Microsoft Graph
NTLM
OAuth1
OAuth2
OneDrive
OpenSSL
Outlook
PEM
PFX/P12
POP3
PRNG
PayPal
Peoplevox
QuickBooks
REST
RSA Encryption
SCP
SFTP
SMTP
SSH
SSH Key
SSH Tunnel
SharePoint
Shopify
Socket/SSL/TLS
Spider
Stream
Stripe
SugarCRM
Tar Archive
Twitter
VoiceBase
Walmart
WebSocket
XML
XML Digital Signatures
XMP
Xero
Zip
curl
eBay

 

 

 

(VB.NET UWP/WinRT) Generate an ECC Key (Public and Private)

Demonstrates how to generate an ECC key and save both public and private parts.

Chilkat Universal Windows Platform (UWP) / WinRT Downloads

Chilkat for the Universal Windows Platform (UWP)

'  This example requires the Chilkat API to have been previously unlocked.
'  See Global Unlock Sample for sample code.

'  Create a Fortuna PRNG and seed it with system entropy.
'  This will be our source of random data for generating the ECC private key.
Dim fortuna As New Chilkat.Prng
Dim entropy As String = fortuna.GetEntropy(32,"base64")
Dim success As Boolean = fortuna.AddEntropy(entropy,"base64")

Dim ecc As New Chilkat.Ecc

'  Generate a random ECC private key on the secp256r1 curve.
'  Chilkat also supports other curves, such as secp384r1, secp521r1, and secp256k1.

Dim privKey As Chilkat.PrivateKey = ecc.GenEccKey("secp256r1",fortuna)
If (privKey Is Nothing ) Then
    Debug.WriteLine(ecc.LastErrorText)
    Exit Sub
End If


'  Save the private key to PKCS8 encrypted PEM
'  (The private key can be saved in a variety of different formats. See the online reference documentation.)
success = privKey.SavePkcs8EncryptedPemFile("pemPassword","qa_output/eccPrivKey.pem")
If (success <> True) Then
    Debug.WriteLine(privKey.LastErrorText)
End If




'  The private key PEM looks like this:

'  	-----BEGIN ENCRYPTED PRIVATE KEY-----
'  	MIHFMEAGCSqGSIb3DQEFDTAzMBsGCSqGSIb3DQEFDDAOBAhUmn+1/lwCIwICCAAw
'  	FAYIKoZIhvcNAwcECPlyNXAXZO+oBIGAIvxvTENXJWbrCwSjh0QNxLecBotUpfI5
'  	auOonLmwVMyt1ahMmNyVo/D+pnKQSE41Fg8fApM0DCDKZUOVCCcK1qirIsMPQkGp
'  	klPJbvrQRVYgzBtU31uNB5y2wqhrIeepal1HXBvbkUK0nfJMbcdz/XAEIQu2HhTD
'  	t6LMScPQld4=
'  	-----END ENCRYPTED PRIVATE KEY-----


'  Now get the public key part from the private key.
'  (A public key is actually a subset of the private key.)
Dim pubKey As Chilkat.PublicKey = privKey.GetPublicKey()

'  Save the public key to a PEM file.
'  (The public key can be saved in a variety of different formats. See the online reference documentation.)
'  For ECC keys, the 1st argument (bPreferPkcs1) is ignored and unused.
Dim bPreferPkcs1 As Boolean = False
success = pubKey.SavePemFile(bPreferPkcs1,"qa_output/eccPubKey.pem")



'  The public key PEM looks like this:

'  	-----BEGIN PUBLIC KEY-----
'  	MIIBSzCCAQMGByqGSM49AgEwgfcCAQEwLAYHKoZIzj0BAQIhAP////8AAAABAAAA
'  	AAAAAAAAAAAA////////////////MFsEIP////8AAAABAAAAAAAAAAAAAAAA////
'  	///////////8BCBaxjXYqjqT57PrvVV2mIa8ZR0GsMxTsPY7zjw+J9JgSwMVAMSd
'  	NgiG5wSTamZ44ROdJreBn36QBEEEaxfR8uEsQkf4vOblY6RA8ncDfYEt6zOg9KE5
'  	RdiYwpZP40Li/hp/m47n60p8D54WK84zV2sxXs7LtkBoN79R9QIhAP////8AAAAA
'  	//////////+85vqtpxeehPO5ysL8YyVRAgEBA0IABGdOH8uM6SfX3mdV+TR0mWp2
'  	gfVRPlxWxwhOiowuNByBxmQz7ZR4CJY1XcN2zkUo5pzW73ZhGwgd2XTOvqPqG40=
'  	-----END PUBLIC KEY-----
' 

Debug.WriteLine("finished.")

 

© 2000-2016 Chilkat Software, Inc. All Rights Reserved.