Platforms to show: All Mac Windows Linux Cross-Platform
/Encryption/Public and Private RSA Key Encryption/Public and Private RSA Key Encryption
Required plugins for this example: MBS Encryption Plugin
You find this example project in your Plugins Download as a Xojo project file within the examples folder: /Encryption/Public and Private RSA Key Encryption/Public and Private RSA Key Encryption
This example is the version from Thu, 6th Apr 2016.
Project "Public and Private RSA Key Encryption.xojo_binary_project"
Class App Inherits Application
Const kEditClear = "&Löschen"
Const kFileQuit = "Beenden"
Const kFileQuitShortcut = ""
EventHandler Sub Open()
dim f1 as FolderItem = FindFile("test.pem")
dim b1 as BinaryStream = BinaryStream.Open(f1)
dim PrivKey as string = B1.Read(b1.Length)
dim f2 as FolderItem = FindFile("test.pub")
dim b2 as BinaryStream = BinaryStream.Open(f2)
dim PubKey as string = B2.Read(b2.Length)
dim UnencryptedData as string = "Hello World. This is just a test."
// encrypt with private key, decrypt with public key
dim EncryptedData as string = OpenSSLMBS.RSAPrivateEncrypt(UnencryptedData, PrivKey)
dim decryptedData as string = OpenSSLMBS.RSAPublicDecrypt(EncryptedData, PubKey)
// encrypt with public key, decrypt with private key
dim EncryptedData2 as string = OpenSSLMBS.RSAPublicEncrypt(UnencryptedData, PubKey)
dim decryptedData2 as string = OpenSSLMBS.RSAPrivateDecrypt(EncryptedData2, PrivKey)
Break // check in debugger
End EventHandler
Function FindFile(name as string) As FolderItem
// Look for file in parent folders
dim parent as FolderItem = GetFolderItem("")
while parent<>Nil
dim file as FolderItem = parent.Child(name)
if file<>Nil and file.Exists then
Return file
end if
parent = parent.Parent
wend
End Function
End Class
MenuBar MenuBar1
MenuItem FileMenu = "&Ablage"
MenuItem FileQuit = "#App.kFileQuit"
MenuItem EditMenu = "&Bearbeiten"
MenuItem EditUndo = "&Rückgängig"
MenuItem UntitledMenu1 = "-"
MenuItem EditCut = "&Ausschneiden"
MenuItem EditCopy = "&Kopieren"
MenuItem EditPaste = "&Einfügen"
MenuItem EditClear = "#App.kEditClear"
MenuItem UntitledMenu0 = "-"
MenuItem EditSelectAll = "&Alles auswählen"
End MenuBar
End Project
The items on this page are in the following plugins: MBS Encryption Plugin.