Observed since 21 Oct, 10:20 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
@0xsequence/ethauth
ETHAuth -- self-signed authorization proofs
____ ____ ____ ____ ____ ____ ____
||e |||t |||h |||a |||u |||t |||h ||
||__|||__|||__|||__|||__|||__|||__||
|/__\|/__\|/__\|/__\|/__\|/__\|/__\|
pnpm add @0xsequence/ethauth (or yarn add ... or npm install ...)
proof = eth.<address>.<claims>.<signature>.<extra>
The account address in hex encoding, ie. '0x9e63b5BF4b31A7F8d5D8b4f54CD361344Eb744C5'.
Note, you should not take the account address in the ethauth proof at face value -- you must parse the Proof and validate it with the library methods provided. The address is included when used to verify smart wallet based accounts (aka contract-based accounts).
a base64 encoded JSON object of
interface Claims {
app: string
exp: number
iat?: number
n?: number
typ?: string
ogn?: string
}
Fields:
app (required) - App identifier requesting the issuance of the ethauth proofexp (required) - Expired at unix timestamp of when the ethauth proof is valid untiliat (optonal) - Issued at unix timestamp of when the ethauth proof has been signed/issuedn (optional) - Nonce value which can be used as a challenge number for added securitytyp (optional) - Type of authorization for this ethauth proofogn (optional) - Domain origin requesting the issuance of the ethauth proofSignature value of the claims message payload. The signature is computed by the EIP712 eth_signTypedData call of the claims object. The signature may be recoverable with ECRecover to determine the EOA address, or you may have a different encoding such as one used with EIP-1271, to validate the contract-based account signature.
ethauth-proof = eth.0x89d9f8f31817badb5d718cd6fb483b71dbd2dfed.eyJhcHAiOiJFV1RUZXN0IiwiaWF0IjoxNTk1NTMwODQwLCJleHAiOjE1OTU1MzExNDB9.0x233ab9164a677a41acc8d52c9e1d1a621acebf9bc8d956c8474618b589acebe10cc350deb4b02bf6951cec8bd23507170f204ca326a5a264b8f6f67fa2619c251c
decodes & verifies to:
0x89D9F8f31817BAdb5D718CD6fb483b71DbD2dfeD{"app":"EWTTest","iat":1595530840,"exp":1595531140}0x233ab9164a677a41acc8d52c9e1d1a621acebf9bc8d956c8474618b589acebe10cc350deb4b02bf6951cec8bd23507170f204ca326a5a264b8f6f67fa2619c251cethauth-proof = eth.0x9e63b5bf4b31a7f8d5d8b4f54cd361344eb744c5.eyJpYXQiOjE1OTQ3NDM4NDgsImV4cCI6MTYyNjI3OTg0OCwibiI6MTMzN30.0x000100012dd090aec5e4a9678f7968533c10fc42b07b9a23fa3b719f79a861adcfc7e1d958e3521bb061c34072f5435681390ccc9be19bf9da32320bd2356d0b4b4d316b1c02
decodes & verifies to:
0x9e63b5bf4b31a7f8d5d8b4f54cd361344eb744c5{"iat":1594743848,"exp":1626279848,"n":1337}0x000100012dd090aec5e4a9678f7968533c10fc42b07b9a23fa3b719f79a861adcfc7e1d958e3521bb061c34072f5435681390ccc9be19bf9da32320bd2356d0b4b4d316b1c02MIT
Download counts and popularity will appear here as the collector receives them.
| Package / target | Requirement | Relationship |
|---|---|---|
js-base64Environment{
"local_name": "js-base64",
"alias": false,
"peer_metadata": null
} | ^3.7.2 | runtime |
jestEnvironment{
"local_name": "jest",
"alias": false,
"peer_metadata": null
} | ^29.3.1 | development |
tslibEnvironment{
"local_name": "tslib",
"alias": false,
"peer_metadata": null
} | ^2.4.1 | development |
ethersEnvironment{
"local_name": "ethers",
"alias": false,
"peer_metadata": null
} | ^5.7.2 | development |
rimrafEnvironment{
"local_name": "rimraf",
"alias": false,
"peer_metadata": null
} | ^3.0.2 | development |
rollupEnvironment{
"local_name": "rollup",
"alias": false,
"peer_metadata": null
} | ^3.3.0 | development |
ts-jestEnvironment{
"local_name": "ts-jest",
"alias": false,
"peer_metadata": null
} | ^29.0.3 | development |
ts-nodeEnvironment{
"local_name": "ts-node",
"alias": false,
"peer_metadata": null
} | ^10.9.1 | development |
typescriptEnvironment{
"local_name": "typescript",
"alias": false,
"peer_metadata": null
} | ~4.8.4 | development |
@types/jestEnvironment{
"local_name": "@types/jest",
"alias": false,
"peer_metadata": null
} | ^29.2.3 | development |
rollup-plugin-typescript2Environment{
"local_name": "rollup-plugin-typescript2",
"alias": false,
"peer_metadata": null
} | ^0.34.1 | development |
ethersEnvironment{
"local_name": "ethers",
"alias": false,
"peer_metadata": null
} | >=5.5 | peer |
Source distribution
{
"shasum": "c097fadefa9d95506df65ad27541af6b24962dfd",
"tarball": "https://registry.npmjs.org/@0xsequence/ethauth/-/ethauth-0.8.0.tgz",
"fileCount": 10,
"integrity": "sha512-qZA78+Oa5fQmx9yXIH93j6KfIPyMncj4fPI9903oQe17DGhHgr5xHKOE5EedZ+H+N/Yud4Yy1buoHhW5VsEsvg==",
"signatures": [
{
"sig": "MEUCIGnk3LRvvHA6CkVU/YEJpE+X4+qlZh4EIP7lP1ilg+lPAiEAmsf8vvIqHNMMEhKYazcuasLTBY4K6pmYahHMb7IUJI8=",
"keyid": "SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"
}
],
"unpackedSize": 49105,
"npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjdVoHACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpV5A/+JA4WodIMlJEzC8lttsn8j2KuJM10BZPziTakR2PmnYUXadvD\r\nDdtbmjQgPS4Toyb688fQlEymO/Bx/Q9+innExjJ5OnQ+ZUvKqPAMocRUi4ml\r\nRzKaMOjy2hJf0Biv52ueex1WGurD1CjIaNCe2Od1My8qCCk7BBx65h8jLhKd\r\npKjfXjavCe4Qz/1hNVKe7yZiLQTY1gC2jpCD3yHRmncaLzYrZgs3NOzy9Q+f\r\nMmodGd854gXKz4VKYG8FSrmlbTO/GXHLPqA+L1Bc1XbLH5uJ7H5T0PsljHd9\r\nDYrWrAz/ir+WEMMd8WKGHD7J3Zq8uxZb16oNhZlSwxKs7KT+mlvZdD8od0ok\r\ntIfTXLKGjVAdvrciOi1wUVVUgZKPqB99F0e1WtOKPkmUM3rTGqbF7tc9T+mR\r\ncyZv3PlXy+SAkLx/57aM0XDR+cwkZXisHGLdUwSrUCkwUcW376GHT+yEGt1w\r\nyDzXiKaYe7yvT+En2DPG8U30t+p6oOMqBIH6oZHPq2l5ESSrRU1Rs9Qe+6lO\r\nzuTtQLSEtWwXQuWRw1A5b2Le2CcxBwUKeu76R8HO9u933JVeRTXipn0Pc3lv\r\ns8ir+h/Rhv35nvZgBAsExWq/Q5ZycnLCLI3Yt7SKtWez5BjgvD0Ifv2S8oWj\r\nNkdBVcZT4xnDLZOd3BuAZ+YBXLybXyRB75w=\r\n=Y1KN\r\n-----END PGP SIGNATURE-----\r\n"
}Observed since 21 Oct, 10:20 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package_version:38d507c4957b3b85bb4fc40e94a0c20a65016f162d71b37053cb78a67ba6d3e2