Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ARC-60 Algorand Wallet Structured Data Signing API #284

Open
wants to merge 32 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
70dd6d3
byte signing arc
deanstef Mar 5, 2024
e17febd
rm ds_store
deanstef Mar 5, 2024
92ded6a
ARC Validator CR
deanstef Mar 6, 2024
f33ae41
ARC Validator CR 2
deanstef Mar 6, 2024
67754a8
bump bulk sigs
deanstef Mar 6, 2024
df31e97
Fix linting
SudoWeezy Mar 11, 2024
7447a0d
arc60 review
deanstef Mar 12, 2024
8d8cef3
simplified schema + nits
deanstef Mar 16, 2024
2472440
leftovers
deanstef Mar 16, 2024
90a15d7
fix ref impl + nits
deanstef Mar 21, 2024
e92a668
check tag in bytes
deanstef Mar 21, 2024
dc9b230
nit
deanstef Mar 21, 2024
045de9e
removed canonicalized stuff
deanstef Apr 8, 2024
a8de5d0
typo
deanstef Apr 8, 2024
cafda81
remove unused dep
deanstef Apr 9, 2024
4a7173d
bump message
deanstef Apr 9, 2024
c08b995
- clarify `data` object in Overview
deanstef Apr 25, 2024
a33817e
nit
deanstef Apr 25, 2024
b244ed6
add AUTH scope and example + update ref impl + clarity nits
deanstef Apr 25, 2024
88c3c32
HD wallets support
deanstef Apr 26, 2024
17c149e
nit
deanstef Apr 26, 2024
282aac4
fix auth-schema.json ref
deanstef Apr 26, 2024
0285805
typo 1
deanstef May 17, 2024
f992d9e
replace StdSigData with StdSignData
deanstef May 17, 2024
43a7178
overview: more expressive example + json type fix
deanstef May 17, 2024
20ecf74
ref. impl. align encoding with default b64
deanstef May 17, 2024
d379f17
clarify encoding object
deanstef May 17, 2024
19720ff
more checks with 'Program' prefix
deanstef May 17, 2024
5c4184e
fix typo
deanstef May 17, 2024
4bad240
gen statement on msg
deanstef May 17, 2024
83a4b79
ref display message section
deanstef May 17, 2024
88923d3
reject not supported encoding
deanstef May 17, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
450 changes: 450 additions & 0 deletions ARCs/arc-0060.md

Large diffs are not rendered by default.

38 changes: 38 additions & 0 deletions assets/arc-0060/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# Logs
logs/
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*

# Compiled javascript
*.js

# Dependency directories
node_modules/

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache

# Misc files and directories
.DS_Store
.fleet
.idea
*.local

# Editor directories and files
.vscode/*
!.vscode/extensions.json
!.vscode/settings.json.example
.idea
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
.vscode-test
20 changes: 20 additions & 0 deletions assets/arc-0060/auth-schema.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"type": "object",
"properties": {
"ARC60Domain": {
"type": "string",
"description": "The ARC-60 domain separator"
},
"bytes": {
"type": "array",
"items": {
"type": "integer",
"minimum": 0,
"maximum": 255,
"maxItems": 32
},
"description": "Challenge to be signed for authentication"
}
},
"required": ["ARC60Domain", "data"]
}
47 changes: 47 additions & 0 deletions assets/arc-0060/lsig-schema.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
{
"type": "object",
"properties": {
"ARC60Domain": {
"type": "string",
"description": "The ARC-60 domain separator"
},
"bytes": {
"type": "object",
"properties": {
"LogicSignatureDescription": {
"type": "object",
"properties": {
"name": { "type": "string"},
"description": { "type": "string" },
"variables": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": { "type": "string" },
"variable": { "type": "string" },
"type": { "type": "string" },
"description": { "type": "string" }
},
"required": ["name", "variable", "type", "description"]
}
}
},
"required": ["name", "description", "variables"]
},
"values": {
"type": "object",
"additionalProperties": {
"anyOf": [
{ "type": "string" },
{ "type": "number" }
]
}
},
"hash": { "type": "string" }
},
"required": ["LogicSignatureDescription", "values", "hash"]
}
},
"required": ["ARC60Domain", "bytes"]
}
255 changes: 255 additions & 0 deletions assets/arc-0060/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

23 changes: 23 additions & 0 deletions assets/arc-0060/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"name": "ts-demo",
"type": "module",
"version": "1.0.0",
"main": "index.js",
"scripts": {
"build": "tsc"
},
"author": "Stefano De Angelis",
"license": "ISC",
"devDependencies": {
"@types/node": "^20.11.24",
"@types/readline-sync": "^1.4.8",
"typescript": "^5.4.4"
},
"dependencies": {
"ajv": "^8.12.0",
"algosdk": "^2.5.0",
"js-sha256": "^0.10.1",
"readline-sync": "^1.4.10",
"tweetnacl": "^1.0.3"
}
}