aries_cloudagent.wallet package¶
Abstract and Indy wallet handling.
Submodules¶
aries_cloudagent.wallet.base module¶
Wallet base class.
-
class
aries_cloudagent.wallet.base.BaseWallet(config: dict)[source]¶ Bases:
abc.ABCAbstract wallet interface.
-
WALLET_TYPE= None¶
-
create_local_did(seed: str = None, did: str = None, metadata: dict = None) → aries_cloudagent.wallet.base.DIDInfo[source]¶ Create and store a new local DID.
Parameters: - seed – Optional seed to use for did
- did – The DID to use
- metadata – Metadata to store with DID
Returns: The created DIDInfo
-
create_public_did(seed: str = None, did: str = None, metadata: dict = {}) → aries_cloudagent.wallet.base.DIDInfo[source]¶ Create and store a new public DID.
Implicitly flags all other dids as not public.
Parameters: - seed – Optional seed to use for did
- did – The DID to use
- metadata – Metadata to store with DID
Returns: The created DIDInfo
-
create_signing_key(seed: str = None, metadata: dict = None) → aries_cloudagent.wallet.base.KeyInfo[source]¶ Create a new public/private signing keypair.
Parameters: - seed – Optional seed allowing deterministic key creation
- metadata – Optional metadata to store with the keypair
Returns: A KeyInfo representing the new record
-
created¶ Check whether the wallet was created on the last open call.
-
get_local_did(did: str) → aries_cloudagent.wallet.base.DIDInfo[source]¶ Find info for a local DID.
Parameters: did – The DID to get info for Returns: A DIDInfo instance for the DID
-
get_local_did_for_verkey(verkey: str) → aries_cloudagent.wallet.base.DIDInfo[source]¶ Resolve a local DID from a verkey.
Parameters: verkey – Verkey to get DID info for Returns: A DIDInfo instance for the DID
-
get_local_dids() → Sequence[aries_cloudagent.wallet.base.DIDInfo][source]¶ Get list of defined local DIDs.
Returns: A list of DIDInfo instances
-
get_public_did() → aries_cloudagent.wallet.base.DIDInfo[source]¶ Retrieve the public did.
Returns: The created DIDInfo
-
get_signing_key(verkey: str) → aries_cloudagent.wallet.base.KeyInfo[source]¶ Fetch info for a signing keypair.
Parameters: verkey – The verification key of the keypair Returns: A KeyInfo representing the keypair
-
handle¶ Get internal wallet reference.
Returns: Defaults to None
-
name¶ Accessor for the wallet name.
Returns: Defaults to None
-
opened¶ Check whether wallet is currently open.
Returns: Defaults to False
-
pack_message(message: str, to_verkeys: Sequence[str], from_verkey: str = None) → bytes[source]¶ Pack a message for one or more recipients.
Parameters: - message – The message to pack
- to_verkeys – The verkeys to pack the message for
- from_verkey – The sender verkey
Returns: The packed message
-
replace_local_did_metadata(did: str, metadata: dict)[source]¶ Replace the metadata associated with a local DID.
Parameters: - did – DID to replace metadata for
- metadata – The new metadata
-
replace_signing_key_metadata(verkey: str, metadata: dict)[source]¶ Replace the metadata associated with a signing keypair.
Parameters: - verkey – The verification key of the keypair
- metadata – The new metadata to store
-
set_public_did(did: str) → aries_cloudagent.wallet.base.DIDInfo[source]¶ Assign the public did.
Returns: The created DIDInfo
-
sign_message(message: bytes, from_verkey: str) → bytes[source]¶ Sign a message using the private key associated with a given verkey.
Parameters: - message – The message to sign
- from_verkey – Sign using the private key related to this verkey
Returns: The signature
-
type¶ Accessor for the wallet type.
Returns: Defaults to None
-
unpack_message(enc_message: bytes) -> (<class 'str'>, <class 'str'>, <class 'str'>)[source]¶ Unpack a message.
Parameters: enc_message – The encrypted message Returns: (message, from_verkey, to_verkey) Return type: A tuple
-
verify_message(message: bytes, signature: bytes, from_verkey: str) → bool[source]¶ Verify a signature against the public key of the signer.
Parameters: - message – The message to verify
- signature – The signature to verify
- from_verkey – Verkey to use in verification
Returns: True if verified, else False
-
aries_cloudagent.wallet.basic module¶
In-memory implementation of BaseWallet interface.
-
class
aries_cloudagent.wallet.basic.BasicWallet(config: dict = None)[source]¶ Bases:
aries_cloudagent.wallet.base.BaseWalletIn-memory wallet implementation.
-
WALLET_TYPE= 'basic'¶
-
create_local_did(seed: str = None, did: str = None, metadata: dict = None) → aries_cloudagent.wallet.base.DIDInfo[source]¶ Create and store a new local DID.
Parameters: - seed – Optional seed to use for did
- did – The DID to use
- metadata – Metadata to store with DID
Returns: A DIDInfo instance representing the created DID
Raises: WalletDuplicateError– If the DID already exists in the wallet
-
create_signing_key(seed: str = None, metadata: dict = None) → aries_cloudagent.wallet.base.KeyInfo[source]¶ Create a new public/private signing keypair.
Parameters: - seed – Seed to use for signing key
- metadata – Optional metadata to store with the keypair
Returns: A KeyInfo representing the new record
Raises: WalletDuplicateError– If the resulting verkey already exists in the wallet
-
created¶ Check whether the wallet was created on the last open call.
-
get_local_did(did: str) → aries_cloudagent.wallet.base.DIDInfo[source]¶ Find info for a local DID.
Parameters: did – The DID to get info for Returns: A DIDInfo instance representing the found DID Raises: WalletNotFoundError– If the DID is not found
-
get_local_did_for_verkey(verkey: str) → aries_cloudagent.wallet.base.DIDInfo[source]¶ Resolve a local DID from a verkey.
Parameters: verkey – The verkey to get the local DID for Returns: A DIDInfo instance representing the found DID Raises: WalletNotFoundError– If the verkey is not found
-
get_local_dids() → Sequence[aries_cloudagent.wallet.base.DIDInfo][source]¶ Get list of defined local DIDs.
Returns: A list of locally stored DIDs as DIDInfo instances
-
get_signing_key(verkey: str) → aries_cloudagent.wallet.base.KeyInfo[source]¶ Fetch info for a signing keypair.
Parameters: verkey – The verification key of the keypair Returns: A KeyInfo representing the keypair Raises: WalletNotFoundError– if no keypair is associated with the verification key
-
name¶ Accessor for the wallet name.
-
opened¶ Check whether wallet is currently open.
Returns: True
-
pack_message(message: str, to_verkeys: Sequence[str], from_verkey: str = None) → bytes[source]¶ Pack a message for one or more recipients.
Parameters: - message – The message to pack
- to_verkeys – List of verkeys to pack for
- from_verkey – Sender verkey to pack from
Returns: The resulting packed message bytes
-
replace_local_did_metadata(did: str, metadata: dict)[source]¶ Replace metadata for a local DID.
Parameters: - did – The DID to replace metadata for
- metadata – The new metadata
Raises: WalletNotFoundError– If the DID doesn’t exist
-
replace_signing_key_metadata(verkey: str, metadata: dict)[source]¶ Replace the metadata associated with a signing keypair.
Parameters: - verkey – The verification key of the keypair
- metadata – The new metadata to store
Raises: WalletNotFoundError– if no keypair is associated with the verification key
-
sign_message(message: bytes, from_verkey: str) → bytes[source]¶ Sign a message using the private key associated with a given verkey.
Parameters: - message – Message bytes to sign
- from_verkey – The verkey to use to sign
Returns: A signature
Raises: WalletError– If the message is not providedWalletError– If the verkey is not provided
-
unpack_message(enc_message: bytes) -> (<class 'str'>, <class 'str'>, <class 'str'>)[source]¶ Unpack a message.
Parameters: enc_message – The packed message bytes
Returns: (message, from_verkey, to_verkey)
Return type: A tuple
Raises: WalletError– If the message is not providedWalletError– If there is a problem unpacking the message
-
verify_message(message: bytes, signature: bytes, from_verkey: str) → bool[source]¶ Verify a signature against the public key of the signer.
Parameters: - message – Message to verify
- signature – Signature to verify
- from_verkey – Verkey to use in verification
Returns: True if verified, else False
Raises: WalletError– If the verkey is not providedWalletError– If the signature is not providedWalletError– If the message is not provided
-
aries_cloudagent.wallet.crypto module¶
Cryptography functions used by BasicWallet.
-
class
aries_cloudagent.wallet.crypto.PackMessageSchema(*, only=None, exclude=(), many=False, context=None, load_only=(), dump_only=(), partial=False, unknown=None)[source]¶ Bases:
marshmallow.schema.SchemaPacked message schema.
-
opts= <marshmallow.schema.SchemaOpts object>¶
-
-
class
aries_cloudagent.wallet.crypto.PackRecipientHeaderSchema(*, only=None, exclude=(), many=False, context=None, load_only=(), dump_only=(), partial=False, unknown=None)[source]¶ Bases:
marshmallow.schema.SchemaPacked recipient header schema.
-
opts= <marshmallow.schema.SchemaOpts object>¶
-
-
class
aries_cloudagent.wallet.crypto.PackRecipientSchema(*, only=None, exclude=(), many=False, context=None, load_only=(), dump_only=(), partial=False, unknown=None)[source]¶ Bases:
marshmallow.schema.SchemaPacked recipient schema.
-
opts= <marshmallow.schema.SchemaOpts object>¶
-
-
class
aries_cloudagent.wallet.crypto.PackRecipientsSchema(*, only=None, exclude=(), many=False, context=None, load_only=(), dump_only=(), partial=False, unknown=None)[source]¶ Bases:
marshmallow.schema.SchemaPacked recipients schema.
-
opts= <marshmallow.schema.SchemaOpts object>¶
-
-
aries_cloudagent.wallet.crypto.create_keypair(seed: bytes = None) → Tuple[bytes, bytes][source]¶ Create a public and private signing keypair from a seed value.
Parameters: seed – Seed for keypair Returns: A tuple of (public key, secret key)
-
aries_cloudagent.wallet.crypto.decode_pack_message(enc_message: bytes, find_key: Callable) → Tuple[str, Optional[str], str][source]¶ Decode a packed message.
Disassemble and unencrypt a packed message, returning the message content, verification key of the sender (if available), and verification key of the recipient.
Parameters: - enc_message – The encrypted message
- find_key – Function to retrieve private key
Returns: A tuple of (message, sender_vk, recip_vk)
Raises: ValueError– If the packed message is invalidValueError– If the packed message reipients are invalidValueError– If the pack algorithm is unsupportedValueError– If the sender’s public key was not provided
-
aries_cloudagent.wallet.crypto.decode_pack_message_outer(enc_message: bytes) → Tuple[dict, dict, bool][source]¶ Decode the outer wrapper of a packed message and extract the recipients.
Parameters: enc_message – The encrypted message Returns: a tuple of the decoded wrapper, recipients, and authcrypt flag
-
aries_cloudagent.wallet.crypto.decode_pack_message_payload(wrapper: dict, payload_key: bytes) → str[source]¶ Decode the payload of a packed message once the CEK is known.
Parameters: - wrapper – The decoded message wrapper
- payload_key – The decrypted payload key
-
aries_cloudagent.wallet.crypto.decrypt_plaintext(ciphertext: bytes, recips_bin: bytes, nonce: bytes, key: bytes) → str[source]¶ Decrypt the payload of a packed message.
Parameters: - ciphertext –
- recips_bin –
- nonce –
- key –
Returns: The decrypted string
-
aries_cloudagent.wallet.crypto.encode_pack_message(message: str, to_verkeys: Sequence[bytes], from_secret: bytes = None) → bytes[source]¶ Assemble a packed message for a set of recipients, optionally including the sender.
Parameters: - message – The message to pack
- to_verkeys – The verkeys to pack the message for
- from_secret – The sender secret
Returns: The encoded message
-
aries_cloudagent.wallet.crypto.encrypt_plaintext(message: str, add_data: bytes, key: bytes) → Tuple[bytes, bytes, bytes][source]¶ Encrypt the payload of a packed message.
Parameters: - message – Message to encrypt
- add_data –
- key – Key used for encryption
Returns: A tuple of (ciphertext, nonce, tag)
-
aries_cloudagent.wallet.crypto.extract_pack_recipients(recipients: Sequence[dict]) → dict[source]¶ Extract the pack message recipients into a dict indexed by verkey.
Parameters: recipients – Recipients to locate Raises: ValueError– If the recipients block is mal-formatted
-
aries_cloudagent.wallet.crypto.extract_payload_key(sender_cek: dict, recip_secret: bytes) → Tuple[bytes, str][source]¶ Extract the payload key from pack recipient details.
Returns: A tuple of the CEK and sender verkey
-
aries_cloudagent.wallet.crypto.prepare_pack_recipient_keys(to_verkeys: Sequence[bytes], from_secret: bytes = None) → Tuple[str, bytes][source]¶ Assemble the recipients block of a packed message.
Parameters: - to_verkeys – Verkeys of recipients
- from_secret – Secret to use for signing keys
Returns: A tuple of (json result, key)
-
aries_cloudagent.wallet.crypto.random_seed() → bytes[source]¶ Generate a random seed value.
Returns: A new random seed
-
aries_cloudagent.wallet.crypto.seed_to_did(seed: str) → str[source]¶ Derive a DID from a seed value.
Parameters: seed – The seed to derive Returns: The DID derived from the seed
-
aries_cloudagent.wallet.crypto.sign_message(message: bytes, secret: bytes) → bytes[source]¶ Sign a message using a private signing key.
Parameters: - message – The message to sign
- secret – The private signing key
Returns: The signature
-
aries_cloudagent.wallet.crypto.sign_pk_from_sk(secret: bytes) → bytes[source]¶ Extract the verkey from a secret signing key.
aries_cloudagent.wallet.error module¶
Wallet-related exceptions.
-
exception
aries_cloudagent.wallet.error.WalletDuplicateError(*args, error_code: str = None, **kwargs)[source]¶ Bases:
aries_cloudagent.wallet.error.WalletErrorDuplicate record exception.
-
exception
aries_cloudagent.wallet.error.WalletError(*args, error_code: str = None, **kwargs)[source]¶ Bases:
aries_cloudagent.core.error.BaseErrorGeneral wallet exception.
-
exception
aries_cloudagent.wallet.error.WalletNotFoundError(*args, error_code: str = None, **kwargs)[source]¶ Bases:
aries_cloudagent.wallet.error.WalletErrorRecord not found exception.
aries_cloudagent.wallet.indy module¶
Indy implementation of BaseWallet interface.
-
class
aries_cloudagent.wallet.indy.IndyWallet(config: dict = None)[source]¶ Bases:
aries_cloudagent.wallet.base.BaseWalletIndy wallet implementation.
-
DEFAULT_FRESHNESS= 0¶
-
DEFAULT_KEY= ''¶
-
DEFAULT_KEY_DERIVIATION= 'ARGON2I_MOD'¶
-
DEFAULT_NAME= 'default'¶
-
DEFAULT_STORAGE_TYPE= None¶
-
KEY_DERIVATION_ARGON2I_INT= 'ARGON2I_INT'¶
-
KEY_DERIVATION_ARGON2I_MOD= 'ARGON2I_MOD'¶
-
KEY_DERIVATION_RAW= 'RAW'¶
-
WALLET_TYPE= 'indy'¶
-
create(replace: bool = False)[source]¶ Create a new wallet.
Parameters: replace – Removes the old wallet if True
Raises: WalletError– If there was a problem removing the walletWalletError– IF there was a libindy error
-
create_local_did(seed: str = None, did: str = None, metadata: dict = None) → aries_cloudagent.wallet.base.DIDInfo[source]¶ Create and store a new local DID.
Parameters: - seed – Optional seed to use for did
- did – The DID to use
- metadata – Metadata to store with DID
Returns: A DIDInfo instance representing the created DID
Raises: WalletDuplicateError– If the DID already exists in the walletWalletError– If there is a libindy error
-
create_signing_key(seed: str = None, metadata: dict = None) → aries_cloudagent.wallet.base.KeyInfo[source]¶ Create a new public/private signing keypair.
Parameters: - seed – Seed for key
- metadata – Optional metadata to store with the keypair
Returns: A KeyInfo representing the new record
Raises: WalletDuplicateError– If the resulting verkey already exists in the walletWalletError– If there is a libindy error
-
created¶ Check whether the wallet was created on the last open call.
-
get_credential_definition_tag_policy(credential_definition_id: str)[source]¶ Return the tag policy for a given credential definition ID.
-
get_local_did(did: str) → aries_cloudagent.wallet.base.DIDInfo[source]¶ Find info for a local DID.
Parameters: did – The DID to get info for
Returns: A DIDInfo instance representing the found DID
Raises: WalletNotFoundError– If the DID is not foundWalletError– If there is a libindy error
-
get_local_did_for_verkey(verkey: str) → aries_cloudagent.wallet.base.DIDInfo[source]¶ Resolve a local DID from a verkey.
Parameters: verkey – The verkey to get the local DID for Returns: A DIDInfo instance representing the found DID Raises: WalletNotFoundError– If the verkey is not found
-
get_local_dids() → Sequence[aries_cloudagent.wallet.base.DIDInfo][source]¶ Get list of defined local DIDs.
Returns: A list of locally stored DIDs as DIDInfo instances
-
get_signing_key(verkey: str) → aries_cloudagent.wallet.base.KeyInfo[source]¶ Fetch info for a signing keypair.
Parameters: verkey – The verification key of the keypair
Returns: A KeyInfo representing the keypair
Raises: WalletNotFoundError– If no keypair is associated with the verification keyWalletError– If there is a libindy error
-
handle¶ Get internal wallet reference.
Returns: A handle to the wallet
-
master_secret_id¶ Accessor for the master secret id.
Returns: The master secret id
-
name¶ Accessor for the wallet name.
Returns: The wallet name
-
open()[source]¶ Open wallet, removing and/or creating it if so configured.
Raises: WalletError– If wallet not found after creationWalletNotFoundError– If the wallet is not foundWalletError– If the wallet is already openWalletError– If there is a libindy error
-
opened¶ Check whether wallet is currently open.
Returns: True if open, else False
-
pack_message(message: str, to_verkeys: Sequence[str], from_verkey: str = None) → bytes[source]¶ Pack a message for one or more recipients.
Parameters: - message – The message to pack
- to_verkeys – List of verkeys to pack for
- from_verkey – Sender verkey to pack from
Returns: The resulting packed message bytes
Raises: WalletError– If no message is providedWalletError– If a libindy error occurs
-
remove()[source]¶ Remove an existing wallet.
Raises: WalletNotFoundError– If the wallet could not be foundWalletError– If there was an libindy error
-
replace_local_did_metadata(did: str, metadata: dict)[source]¶ Replace metadata for a local DID.
Parameters: - did – The DID to replace metadata for
- metadata – The new metadata
-
replace_signing_key_metadata(verkey: str, metadata: dict)[source]¶ Replace the metadata associated with a signing keypair.
Parameters: - verkey – The verification key of the keypair
- metadata – The new metadata to store
Raises: WalletNotFoundError– if no keypair is associated with the verification key
-
set_credential_definition_tag_policy(credential_definition_id: str, taggables: Sequence[str] = None, retroactive: bool = True)[source]¶ Set the tag policy for a given credential definition ID.
Parameters: - credential_definition_id – The ID of the credential definition
- taggables – A sequence of string values representing attribute names
- retroactive – Whether to apply the policy to previously-stored credentials
-
sign_message(message: bytes, from_verkey: str) → bytes[source]¶ Sign a message using the private key associated with a given verkey.
Parameters: - message – Message bytes to sign
- from_verkey – The verkey to use to sign
Returns: A signature
Raises: WalletError– If the message is not providedWalletError– If the verkey is not providedWalletError– If a libindy error occurs
-
unpack_message(enc_message: bytes) -> (<class 'str'>, <class 'str'>, <class 'str'>)[source]¶ Unpack a message.
Parameters: enc_message – The packed message bytes
Returns: (message, from_verkey, to_verkey)
Return type: A tuple
Raises: WalletError– If the message is not providedWalletError– If a libindy error occurs
-
verify_message(message: bytes, signature: bytes, from_verkey: str) → bool[source]¶ Verify a signature against the public key of the signer.
Parameters: - message – Message to verify
- signature – Signature to verify
- from_verkey – Verkey to use in verification
Returns: True if verified, else False
Raises: WalletError– If the verkey is not providedWalletError– If the signature is not providedWalletError– If the message is not providedWalletError– If a libindy error occurs
-
aries_cloudagent.wallet.provider module¶
Default wallet provider classes.
-
class
aries_cloudagent.wallet.provider.WalletProvider[source]¶ Bases:
aries_cloudagent.config.base.BaseProviderProvider for the default configurable wallet classes.
-
WALLET_TYPES= {'basic': 'aries_cloudagent.wallet.basic.BasicWallet', 'indy': 'aries_cloudagent.wallet.indy.IndyWallet'}¶
-
aries_cloudagent.wallet.routes module¶
Wallet admin routes.
-
class
aries_cloudagent.wallet.routes.DIDListSchema(*, only=None, exclude=(), many=False, context=None, load_only=(), dump_only=(), partial=False, unknown=None)[source]¶ Bases:
marshmallow.schema.SchemaResult schema for connection list.
-
opts= <marshmallow.schema.SchemaOpts object>¶
-
-
class
aries_cloudagent.wallet.routes.DIDResultSchema(*, only=None, exclude=(), many=False, context=None, load_only=(), dump_only=(), partial=False, unknown=None)[source]¶ Bases:
marshmallow.schema.SchemaResult schema for a DID.
-
opts= <marshmallow.schema.SchemaOpts object>¶
-
-
class
aries_cloudagent.wallet.routes.DIDSchema(*, only=None, exclude=(), many=False, context=None, load_only=(), dump_only=(), partial=False, unknown=None)[source]¶ Bases:
marshmallow.schema.SchemaResult schema for a DID.
-
opts= <marshmallow.schema.SchemaOpts object>¶
-
-
class
aries_cloudagent.wallet.routes.GetTagPolicyResultSchema(*, only=None, exclude=(), many=False, context=None, load_only=(), dump_only=(), partial=False, unknown=None)[source]¶ Bases:
marshmallow.schema.SchemaResult schema for tagging policy get request.
-
opts= <marshmallow.schema.SchemaOpts object>¶
-
-
class
aries_cloudagent.wallet.routes.SetTagPolicyRequestSchema(*, only=None, exclude=(), many=False, context=None, load_only=(), dump_only=(), partial=False, unknown=None)[source]¶ Bases:
marshmallow.schema.SchemaRequest schema for tagging policy set request.
-
opts= <marshmallow.schema.SchemaOpts object>¶
-
-
aries_cloudagent.wallet.routes.format_did_info(info: aries_cloudagent.wallet.base.DIDInfo)[source]¶ Serialize a DIDInfo object.
-
aries_cloudagent.wallet.routes.register(app: <sphinx.ext.autodoc.importer._MockObject object at 0x7ffa2ed67c18>)[source]¶ Register routes.
-
aries_cloudagent.wallet.routes.wallet_create_did(request: <sphinx.ext.autodoc.importer._MockObject object at 0x7ffa2ed67c18>)[source]¶ Request handler for creating a new wallet DID.
Parameters: request – aiohttp request object Returns: The DID info
-
aries_cloudagent.wallet.routes.wallet_did_list(request: <sphinx.ext.autodoc.importer._MockObject object at 0x7ffa2ed67c18>)[source]¶ Request handler for searching wallet DIDs.
Parameters: request – aiohttp request object Returns: The DID list response
-
aries_cloudagent.wallet.routes.wallet_get_public_did(request: <sphinx.ext.autodoc.importer._MockObject object at 0x7ffa2ed67c18>)[source]¶ Request handler for fetching the current public DID.
Parameters: request – aiohttp request object Returns: The DID info
-
aries_cloudagent.wallet.routes.wallet_get_tagging_policy(request: <sphinx.ext.autodoc.importer._MockObject object at 0x7ffa2ed67c18>)[source]¶ Request handler for getting the tag policy associated with a cred def.
Parameters: request – aiohttp request object Returns: A JSON object containing the tagging policy
aries_cloudagent.wallet.util module¶
Wallet utility functions.
-
aries_cloudagent.wallet.util.b58_to_bytes(val: str) → bytes[source]¶ Convert a base 58 string to bytes.
-
aries_cloudagent.wallet.util.b64_to_bytes(val: str, urlsafe=False) → bytes[source]¶ Convert a base 64 string to bytes.
-
aries_cloudagent.wallet.util.b64_to_str(val: str, urlsafe=False, encoding=None) → str[source]¶ Convert a base 64 string to string on input encoding (default utf-8).
-
aries_cloudagent.wallet.util.bytes_to_b58(val: bytes) → str[source]¶ Convert a byte string to base 58.
-
aries_cloudagent.wallet.util.bytes_to_b64(val: bytes, urlsafe=False, pad=True) → str[source]¶ Convert a byte string to base 64.
-
aries_cloudagent.wallet.util.pad(val: str) → str[source]¶ Pad base64 values if need be: JWT calls to omit trailing padding.
-
aries_cloudagent.wallet.util.set_urlsafe_b64(val: str, urlsafe: bool = True) → str[source]¶ Set URL safety in base64 encoding.