Memo Format for User Agents #106
jonathanlei
started this conversation in
Ideas (pre standard proposal)
Replies: 1 comment 4 replies
-
Isn't this a duplicate of #103? I added a comment & elaboration in #103 regarding adding user agents to transactions probably being a bad idea (besides a waste of storage space for analytics purposes, to be honest: Full History node operators will have even more data to store for every transaction). Regarding User Agents with transactions: "application/version" could be a bad idea to use as an example, as including app name and version in Memos could give away extra attack/scam surface: it could help to provide an easy to use attack vector when a user is already identified by r-address.
TL;DR:
|
Beta Was this translation helpful? Give feedback.
4 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Memo Format for User Agents
Purpose and Scope
The purpose of this standard is to define a format for on-chain analytics information on XRP Ledger transactions. The memo field can be used for various applications, including but not limited to adding on-chain analytics information for a transaction. This standard is intended to be used by client libraries (and other user agents) across various applications.
This document covers the general format for memos and includes a specific subsection for the
fundWallet
function in client libraries for Testnet transactions.Data Structure and Format
The memo object should be an object with the following properties:
data
: An optional string that represents the data.type
: A required string that represents the user agent or client (i.e. application name and version number).format
: An optional string that represents the format of the data.The
type
field should follow existing standards for user agent identification. Thetype
field should specify the identification data.The
format
field, if present, should follow the format of standard MIME types.Example Template
Specific Example
Validation Rules
To ensure that the memo field is consistent with the standard and can be read by compatible software, the following validation rules should be followed:
data
,type
, andformat
fields, if present, should be strings.data
field is optional.format
field is optional.format
field is present, it should follow the format of standard MIME types.Best Practices
To ensure that the memo field is easy to read and consistent across different user agents, the following best practices are recommended:
type
andformat
fields.type
field.format
field, such as MIME types.data
field only when necessary.fundWallet Function (Testnet)
For the fundWallet function used in Testnet transactions from client libraries, the memo field is used to add on-chain analytics information for a transaction. This tracking is only done for Testnet transactions and is not applicable to Mainnet usage.
References
Beta Was this translation helpful? Give feedback.
All reactions