The Wolfram Language includes built-in functions for both symmetric (private-key) and asymmetric (public-key) cryptography, including RSA, elliptic curve and other methods.

Encryption & Decryption

Encrypt encrypt any expression with symmetric or asymmetric encryption

Decrypt decrypt an encrypted object or byte array

Representation of Encrypted Data

EncryptedObject symbolic representation of encrypted data and related metadata

ByteArray raw bytes of ciphertext etc.

File Encryption

EncryptFile, DecryptFile encrypt, decrypt files and cloud objects

Encryption System Specification

SymmetricKey key giving complete information for a symmetric encryption system

PublicKey public key for an asymmetric (public-key) encryption system

PrivateKey private key for an asymmetric (public-key) encryption system

Key Generation

GenerateSymmetricKey generate a key randomly or from a password

GenerateAsymmetricKeyPair generate random public and private keys

Key Derivation

GenerateDerivedKey derive a key from a password (using scrypt, etc.)

VerifyDerivedKey verify a password from a derived key

DerivedKey representation of a derived key

Key Management

Import, ImportString import keys from "PEM" files

SecurityCertificate representation of a public-key security certificate

Digital Signatures

GenerateDigitalSignature generate a digital signature using a private key

VerifyDigitalSignature verify a digital signature using a public key

DigitalSignature symbolic representation of a digital signature

Hash compute a wide range of cryptographic hashes

GenerateFileSignature  ▪  VerifyFileSignature  ▪  FileHash

Cryptographic Number Theory »

PowerMod  ▪  FactorInteger  ▪  MultiplicativeOrder  ▪  EulerPhi  ▪  ...


DictionaryLookup  ▪  CharacterCounts  ▪  LetterNumber

Handling Ciphertext

ByteArrayToString  ▪  StringToByteArray  ▪  BaseEncode  ▪  BaseDecode

System Credential Storage

SystemCredential store passwords in your operating system's secure credential store

$SystemCredentialStore the currently active credential store

SystemCredentialData  ▪  SystemCredentialKeys  ▪  SystemCredentialKey

$DefaultSystemCredentialStore  ▪  SystemCredentialStoreObject