From cb59d403606fb166c0a65cd31b41f097feea54a3 Mon Sep 17 00:00:00 2001 From: matteo-cristino Date: Mon, 6 May 2024 10:09:54 +0200 Subject: [PATCH 1/3] fix(zenexplorer): update scenarios list, include if and foreach statements --- src/zenexplorer/load_statements.lua | 20 ++++++++++++++++++++ src/zenexplorer/main.go | 18 ++++++++++++++++++ src/zenexplorer/zencodeStatements.go | 15 ++++++++++----- 3 files changed, 48 insertions(+), 5 deletions(-) diff --git a/src/zenexplorer/load_statements.lua b/src/zenexplorer/load_statements.lua index 1bc66a0..8811801 100644 --- a/src/zenexplorer/load_statements.lua +++ b/src/zenexplorer/load_statements.lua @@ -7,9 +7,11 @@ local function only_statements(steps, defaults) end local given_stms = only_statements(ZEN.given_steps) local then_stms = only_statements(ZEN.then_steps) +local foreach_stms = only_statements(ZEN.foreach_steps) local SCENARIOS = { "array", + "bbs", "bitcoin", "credential", "data", @@ -18,19 +20,27 @@ local SCENARIOS = { "dp3t", "ecdh", "eddsa", + "es256", "ethereum", + "foreach", + "fsp", "given", "hash", "http", "keyring", "pack", "petition", + "planetmint", + "pvss", "qp", "random", "reflow", "schnorr", + "sd_jwt", "secshare", + "table", "then", + "time", "verify", "w3c", "when" @@ -38,18 +48,28 @@ local SCENARIOS = { local when_stms = {} when_stms["default"] = only_statements(ZEN.when_steps) +local if_stms = {} +if_stms["default"] = only_statements(ZEN.if_steps) + -- Load one scenario at a time for _, scenario in ipairs(SCENARIOS) do ZEN.when_steps = {} + ZEN.if_steps = {} load_scenario("zencode_" .. scenario) local statements = only_statements(ZEN.when_steps) if #statements > 0 then when_stms[scenario] = statements end + local if_statements = only_statements(ZEN.if_steps) + if #if_statements > 0 then + if_stms[scenario] = if_statements + end end print(JSON.encode({ ["given"] = given_stms, ["then"] = then_stms, ["when"] = when_stms, + ["if"] = if_stms, + ["foreach"] = foreach_stms })) diff --git a/src/zenexplorer/main.go b/src/zenexplorer/main.go index b356664..e7e99c8 100644 --- a/src/zenexplorer/main.go +++ b/src/zenexplorer/main.go @@ -133,6 +133,24 @@ func createKeyValueList(z ZenStatements) []list.Item { }) } } + for k, v := range z.If { + for i := 0; i < len(v); i++ { + var scenario = "" + if k != "default" { + scenario = k + } + statements = append(statements, ZencodeStatement { + scenario: scenario, + statement: "If I " + v[i], + }) + } + } + for i := 0; i < len(z.Foreach); i++ { + statements = append(statements, ZencodeStatement { + scenario: "", + statement: "Foreach " + z.Foreach[i], + }) + } for i := 0; i < len(z.Then); i++ { statements = append(statements, ZencodeStatement { scenario: "", diff --git a/src/zenexplorer/zencodeStatements.go b/src/zenexplorer/zencodeStatements.go index a10e1a4..0b1119a 100644 --- a/src/zenexplorer/zencodeStatements.go +++ b/src/zenexplorer/zencodeStatements.go @@ -28,10 +28,12 @@ import ( ) type ZenStatements struct { - Given []string `json:"given"` - When map[string][]string `json:"when"` - Then []string `json:"then"` - mtx *sync.Mutex + Given []string `json:"given"` + When map[string][]string `json:"when"` + If map[string][]string `json:"if"` + Foreach []string `json:"foreach"` + Then []string `json:"then"` + mtx *sync.Mutex } //go:embed load_statements.lua @@ -71,6 +73,9 @@ func (z *ZenStatements) count() int { for _, v := range z.When { count = count + len(v) } - return count + len(z.Given) + len(z.Then) + for _, v := range z.If { + count = count + len(v) + } + return count + len(z.Given) + len(z.Then) + len(z.Foreach) } From fedb88bf38382df403344789dfff446d6e5e005a Mon Sep 17 00:00:00 2001 From: matteo-cristino Date: Mon, 6 May 2024 10:10:15 +0200 Subject: [PATCH 2/3] chore: update gitignore with breakroom --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 66469fc..4ad75da 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ restroom-test zendebug zenexplorer +breakroom +breakroom-read From 1f976f6eb17a328b7ad286e1ed57b33778d228e4 Mon Sep 17 00:00:00 2001 From: matteo-cristino Date: Mon, 6 May 2024 10:16:02 +0200 Subject: [PATCH 3/3] chore(zenexplorer): update dafault statements --- src/zenexplorer/default_statements.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/zenexplorer/default_statements.json b/src/zenexplorer/default_statements.json index c13ffa2..ebfcd49 100644 --- a/src/zenexplorer/default_statements.json +++ b/src/zenexplorer/default_statements.json @@ -1 +1 @@ -{"given":["my '' is valid","my name is in a '' named ''","my '' named by ''","a '' named by ''","schema","my '' named ''","a '' is valid","am ''","my ''","a '' named ''","my name is in a '' named '' in ''","a ''","a '' in ''","codec","nothing","config","trace","a '' public key from ''","a '' named '' in ''","debug","a '' named by '' in ''","backtrace","a '' from ''"],"then":["print my ''","config","codec","print '' from '' as '' in ''","print '' from ''","schema","print data from '' as ''","print my data from '' as ''","print data","backtrace","debug","print my keyring","trace","print data as ''","print my '' from ''","print my data from ''","print my data","print my data as ''","print data from ''","nothing","print my '' from '' as ''","print '' from '' as ''","print my '' as ''","print string ''","print ''","print object named by ''","print '' as ''","print keyring","print '' as '' in ''"],"when":{"credential":["create the credential request","create the credentials","create the credential key","create the issuer public key","create the credential key with secret key ''","create the issuer key","create the credential signature","verify the credential proof","create the credential key with secret ''","aggregate the issuer public keys","create the credential proof"],"default":["create the copy of '' from ''","create the mpack of ''","verify '' is not equal to '' in ''","create the flat array of keys in ''","'' is not found","seed the random with ''","create the hmac of '' with key ''","backtrace","trace","create the random object of '' bits","remove spaces in ''","number '' is more than ''","rename '' to named by ''","create the hash of '' using ''","create the result of '' in '' / ''","the '' is found in ''","create the new dictionary","pickup from path ''","remove the '' from ''","find the max value '' for dictionaries in ''","create the testnet key with secret ''","create the bitcoin raw transaction","insert true in ''","create the copy of '' in '' in ''","create the result of '' % ''","create the size of ''","'' is found","create the hash of ''","remove all occurrences of character '' in ''","rename '' to ''","create the hashes of each object in ''","copy the '' in '' to ''","create the array of '' random objects","move '' in ''","find the min value '' for dictionaries in ''","create the array by splitting '' at ''","create the number from ''","number '' is less or equal than ''","create the key derivation of ''","insert '' in ''","copy '' to ''","remove the ''","'' is not found in ''","create the array of objects named by '' found in ''","create the result of '' - ''","copy the '' to ''","create the bitcoin key with secret ''","filter '' fields from ''","create the '' cast of strings in ''","create the key derivation of '' with password ''","compact ascii strings in ''","done","the '' is not found in ''","write string '' in ''","create the array of '' random numbers modulo ''","rename the object named by '' to ''","insert false in ''","create the ''","create the copy of '' in ''","create the sum value '' for dictionaries in ''","create the copy of object named by '' from dictionary ''","the '' is found in '' at least '' times","create the sum value '' for dictionaries in '' where '' > ''","split the rightmost '' bytes of ''","create the '' decoded from mpack ''","delete the ''","verify '' is not equal to ''","append '' to ''","create the key derivation of '' with '' rounds","verify '' is a email","pick the random object in ''","create the random object of '' bytes","copy contents of '' named '' in ''","create the pruned dictionary of ''","create the sum value of elements in array ''","create the testnet raw transaction","create the result of '' in '' - '' in ''","sign the bitcoin transaction","create the testnet transaction to ''","create the '' named ''","create the testnet transaction","create the bitcoin transaction","create the testnet address","for each dictionary in '' append '' to ''","create the json of ''","create the testnet public key","create the bitcoin public key","create the testnet key with secret key ''","create the result of ''","create the bitcoin key with secret key ''","create the count of char '' found in ''","take '' from path ''","create the array of '' random objects of '' bytes","rename the '' to ''","create the testnet key","create the bitcoin key","config","codec","schema","debug","create the result of '' inverted sign","create the '' decoded from zpack ''","create the zpack of ''","create the keyring","create the variance of elements in array ''","create the result of '' in '' % '' in ''","create the result of '' in '' + '' in ''","number '' is more or equal than ''","create the new array","verify '' contains a list of emails","number '' is less than ''","verify '' is equal to '' in ''","create the standard deviation of elements in array ''","move '' from '' to ''","create the bitcoin transaction to ''","split the leftmost '' bytes of ''","copy contents of '' in ''","create the average of elements in array ''","create the result of '' * ''","set '' to '' as ''","rename the object named by '' to named by ''","create the key derivation of '' with '' rounds with password ''","create the array of elements named '' for dictionaries in ''","create the result of '' in '' * '' in ''","create the length of ''","create the bitcoin address","create the array of '' random numbers","create the copy of '' from dictionary ''","create the hash to point '' of each object in ''","create the result of '' in '' / '' in ''","create the result of '' in '' * ''","'' is found in ''","create the random ''","remove ''","create the new dictionary named ''","create the result of '' in '' + ''","create the copy of element '' in array ''","create the result of '' in '' - ''","create the random dictionary with '' random objects from ''","insert string '' in ''","create the flat array of contents in ''","remove newlines in ''","the elements in '' are equal","create the key derivations of each object in ''","verify '' is equal to ''","the elements in '' are not equal","create the result of '' + ''","create the aggregation of array ''","create the result of '' in '' % ''","sign the testnet transaction","write number '' in ''","delete ''","remove zero values in ''","create the array of '' random objects of '' bits","find the '' for dictionaries in '' where '' = ''","create the result of '' * '' in ''","create the result of '' / '' in ''","create the result of '' / ''","randomize the '' array"],"dp3t":["renew the secret day key to a new day","create the proximity tracing of infected ids","create the ephemeral ids for today"],"ecdh":["create the ecdh key","create the ecdh key with secret key ''","encrypt the secret message of '' for ''","create the ecdh public key","decrypt the text of '' with ''","verify the '' has a signature in '' by ''","verify the '' has a ecdh signature in '' by ''","create the signature of ''","decrypt the text of '' from ''","create the ecdh key with secret ''","create the ecdh signature of ''","encrypt the secret message '' with ''"],"eddsa":["create the eddsa signature of ''","create the eddsa key with secret ''","verify the '' has a eddsa signature in '' by ''","create the eddsa public key","create the eddsa public key with secret key ''","create the eddsa key","create the eddsa key with secret key ''"],"ethereum":["verify the signed ethereum transaction from ''","create the string from the ethereum bytes named ''","create the signed ethereum transaction","create the ethereum address","use the ethereum transaction to transfer the erc721 '' from '' to ''","create the ethereum key with secret key ''","use the ethereum transaction to approve the erc721 '' transfer from ''","use the ethereum transaction to store ''","create the ethereum transaction to ''","create the ethereum transaction of '' to ''","create the ethereum key","use the ethereum transaction to transfer the erc721 '' in the contract '' to '' in planetmint","create the signed ethereum transaction for chain ''","use the ethereum transaction to create the erc721 of object ''","create the ethereum key with secret ''","use the ethereum transaction to transfer '' erc20 tokens to ''","use the ethereum transaction to create the erc721 of uri ''","create the '' decoded from ethereum bytes ''","use the ethereum transaction to transfer '' erc20 tokens to '' with details ''"],"http":["create the url from ''","append '' as http request to ''"],"petition":["create the petition signature ''","count the petition results","the petition signature is not a duplicate","create a petition tally","create the petition ''","verify the new petition to be empty","the petition signature is just one more","verify the signature proof is correct","add the signature to the petition"],"qp":["create the ntrup secret from ''","create the kyber public key","create the kyber key","create the ntrup kem for ''","create the ntrup key","create the dilithium key","create the ntrup public key","create the kyber kem for ''","create the kyber secret from ''","create the dilithium signature of ''","create the dilithium public key","create the kyber public key with secret key ''","create the dilithium public key with secret key ''","create the ntrup public key with secret key ''","verify the '' has a dilithium signature in '' by ''"],"reflow":["add the reflow signature to the reflow seal","create the reflow signature","prepare credentials for verification","create the reflow seal","create the reflow identity of ''","create the reflow public key","verify the reflow signature credential","create the reflow identity of objects in ''","aggregate the reflow public key from array ''","check the reflow signature fingerprint is new","verify the material passport of ''","aggregate the reflow seal array in ''","create the material passport of ''","create the reflow key","verify the material passport of '' is valid","create the reflow key with secret key ''","verify the reflow seal is valid","add the reflow fingerprint to the reflow seal","create the reflow seal with identity ''","create the reflow key with secret ''"],"schnorr":["create the schnorr key with secret ''","verify the '' has a schnorr signature in '' by ''","create the schnorr public key with secret key ''","create the schnorr signature of ''","create the schnorr key with secret key ''","create the schnorr key","create the schnorr public key"],"secshare":["create the secret shares of '' with '' quorum ''","compose the secret using ''"],"w3c":["create the verificationmethod","verify the verifiable credential named ''","sign the verifiable credential named ''","verify the jws signature of ''","set the verification method in '' to ''","create the serviceendpoint","verify the did document named ''","get the verification method in ''","create the jws signature of ''"]}} +{"foreach":["'' in ''","'' in sequence from '' to '' with step ''"],"given":["'' part of '' after string prefix ''","'' in ''","''","'' is valid","my name is in '' named ''","my '' is valid","codec","'' named by ''","my name is in '' named '' in ''","'' named '' in ''","my '' named ''","config","'' named ''","'' part of '' before string suffix ''","trace","backtrace","my ''","'' public key from ''","'' in path ''","my '' named by ''","debug","rename '' to ''","'' from ''","schema","break","am ''","'' named by '' in ''","nothing"],"if":{"bbs":["verify bbs shake proof with public key '' presentation header '' disclosed messages '' and disclosed indexes ''","verify bbs proof with public key '' presentation header '' disclosed messages '' and disclosed indexes ''","verify '' has a bbs signature in '' by ''","verify bbs shake proof","verify '' has a bbs shake signature in '' by ''","verify bbs proof"],"credential":["verify credential proof"],"default":["verify '' is not equal to ''","verify elements in '' are equal","verify '' is not found","verify '' is a email","verify size of '' is less than ''","verify '' is found in '' at least '' times","verify '' is found in ''","verify '' is found","verify '' is not equal to '' in ''","verify '' is equal to ''","verify '' has suffix ''","verify size of '' is more or equal than ''","verify '' starts with ''","verify '' ends with ''","verify '' is not found in ''","verify elements in '' are not equal","verify '' is a json","verify '' contains a list of emails","verify number '' is less or equal than ''","verify number '' is more or equal than ''","verify size of '' is more than ''","verify number '' is less than ''","verify '' has prefix ''","verify '' is equal to '' in ''","verify size of '' is less or equal than ''","verify number '' is more than ''"],"ecdh":["verify '' has a ecdsa deterministic signature in '' by ''","verify '' has a ecdh deterministic signature in '' by ''","verify '' has a ecdh signature in '' by ''","verify '' has a signature in '' by ''"],"eddsa":["verify '' has a eddsa signature in '' by ''"],"es256":["verify '' has a es256 signature in '' by ''"],"ethereum":["verify '' has a ethereum signature in '' by ''","use ethereum address signature pair array '' to create result array of ''","verify ethereum address signature pair array '' of ''"],"petition":["verify petition signature is just one more","verify signature proof is correct","verify petition signature is not a duplicate"],"qp":["verify '' has a dilithium signature in '' by ''"],"reflow":["verify reflow signature fingerprint is new","verify material passport of '' is valid","verify reflow signature credential","verify material passport of ''","verify reflow seal is valid"],"schnorr":["verify '' has a schnorr signature in '' by ''"],"sd_jwt":["verify disclosures '' are found in signed selective disclosure ''","verify signed selective disclosure '' issued by '' is valid"],"w3c":["verify jws signature in ''","verify jws signature of ''","verify verifiable credential named ''","verify json web token in '' using ''","verify did document named '' is signed by ''","verify '' has a jws signature in ''","verify did document named ''"]},"then":["print my ''","print my data from ''","print codec","print string ''","print my '' from ''","print my '' from '' as ''","config","codec","print my data from '' as ''","break","print data from ''","print '' from '' as ''","trace","debug","backtrace","print ''","print '' from '' as '' in ''","print object named by ''","print my data as ''","print data from '' as ''","print '' as ''","print my name in ''","print my '' as ''","nothing","print my keyring","print data as ''","print my data","schema","print data","print '' as '' in ''","print keyring","print '' from ''"],"when":{"bbs":["create bbs shake public key with secret key ''","create bbs shake key","verify '' has a bbs signature in '' by ''","verify bbs shake proof with public key '' presentation header '' disclosed messages '' and disclosed indexes ''","create bbs proof","create bbs key with secret ''","create bbs proof of signature '' of messages '' with public key '' presentation header '' and disclosed indexes ''","create bbs key with secret key ''","create bbs shake key with secret ''","create bbs shake proof of signature '' of messages '' with public key '' presentation header '' and disclosed indexes ''","verify bbs shake proof","verify bbs proof with public key '' presentation header '' disclosed messages '' and disclosed indexes ''","create bbs signature of ''","create bbs shake proof","verify bbs proof","create bbs public key","create bbs disclosed messages","create bbs shake signature of ''","create bbs shake public key","verify '' has a bbs shake signature in '' by ''","create bbs key","create bbs shake key with secret key ''","create bbs public key with secret key ''"],"credential":["create issuer public key","create credential proof","create credential signature","create credential key","create credential key with secret ''","aggregate verifiers in ''","create credential key with secret key ''","create issuer key","aggregate issuer public keys","aggregate credentials in ''","verify credential proof","create credentials","create credential request"],"default":["backtrace","append string '' to ''","split rightmost '' bytes of ''","rename object named by '' to named by ''","create size of ''","append '' to ''","create '' string of ''","create result of ''","create key derivation of '' with password ''","split leftmost '' bytes of ''","create json escaped string of ''","verify '' ends with ''","find max value '' for dictionaries in ''","create testnet key with secret key ''","exit with error message ''","verify '' is not found","verify '' is a email","remove zero values in ''","create random object of '' bytes","create copy of object named by '' from dictionary ''","create random dictionary with '' random objects from ''","done","create aggregation of array ''","write number '' in ''","verify number '' is less or equal than ''","verify number '' is more or equal than ''","verify size of '' is more than ''","create array of '' random objects of '' bits","create ''","create array of '' random numbers","create result of '' in '' - ''","move '' in ''","create count of char '' found in ''","create '' decoded from mpack ''","copy contents of '' in ''","pick random object in ''","create '' cast of strings in ''","create copy of '' from dictionary ''","copy named by '' in ''","create new array","create random ''","create float '' cast of integer in ''","break foreach","write string '' in ''","create standard deviation of elements in array ''","create result of '' * '' in ''","create pruned dictionary of ''","delete ''","verify number '' is more than ''","verify '' is not equal to ''","seed random with ''","create testnet key with secret ''","copy '' to '' in ''","insert true in ''","move '' to '' in ''","create result of '' in '' % ''","create result of '' / ''","codec","create variance of elements in array ''","create key derivations of each object in ''","create hash to point '' of ''","create result of '' in '' / ''","create sum value '' for dictionaries in '' where '' > ''","filter '' fields from ''","create result of '' in '' * ''","verify size of '' is less than ''","set '' to '' base ''","create bitcoin transaction to ''","exit foreach","verify '' is equal to ''","create result of '' + ''","verify size of '' is more or equal than ''","copy '' from '' to ''","create bitcoin address","create result of '' in '' * '' in ''","create key derivation of '' with '' rounds","create testnet transaction to ''","verify '' is found in '' at least '' times","verify '' is equal to '' in ''","insert false in ''","create testnet raw transaction","create bitcoin raw transaction","append '' of '' to ''","copy '' to ''","rename '' to named by ''","verify '' contains a list of emails","create array of elements named '' for dictionaries in ''","verify '' is not equal to '' in ''","sign testnet transaction","sign bitcoin transaction","create testnet transaction","create result of '' * ''","create testnet address","set '' to '' as ''","create result of '' inverted sign","verify number '' is less than ''","create testnet public key","create hashes of each object in ''","create sum value of elements in array ''","create bitcoin public key","create bitcoin key with secret ''","create number from ''","create new dictionary","create '' from '' in ''","find min value '' for dictionaries in ''","create bitcoin transaction","config","create bitcoin key with secret key ''","break","debug","create testnet key","create key derivation of '' with '' rounds with password ''","verify '' is found","verify elements in '' are equal","create timestamp","take '' from path ''","pickup a '' from path ''","pickup from path ''","create result of '' in '' + ''","create copy of last element from ''","create '' named ''","create result of '' % ''","verify '' is found in ''","verify '' is not found in ''","remove '' from ''","copy '' in ''","create hmac of '' with key ''","move named by '' in ''","create hash of '' using ''","verify '' has suffix ''","verify '' has prefix ''","create array of '' random objects of '' bytes","remove ''","for each dictionary in '' append '' to ''","verify '' is a json","create new dictionary named ''","create flat array of keys in ''","rename object named by '' to ''","verify size of '' is less or equal than ''","schema","create keyring","create bitcoin key","create result of '' in '' - '' in ''","create random object of '' bits","create array by splitting '' at ''","create array of '' random objects","remove newlines in ''","create json unescaped object of ''","create flat array of contents in ''","create integer '' cast of timestamp ''","rename '' to ''","create sum value '' for dictionaries in ''","remove spaces in ''","copy contents of '' named '' in ''","create array of '' random numbers modulo ''","remove all occurrences of character '' in ''","trace","create result of '' in '' + '' in ''","move '' from '' to ''","create key derivation of ''","create result of '' in '' / '' in ''","create hash of ''","verify '' starts with ''","find '' for dictionaries in '' where '' = ''","create result of '' - ''","create array of objects named by '' found in ''","randomize '' array","compact ascii strings in ''","create result of '' in '' % '' in ''","verify elements in '' are not equal","insert string '' in ''","create mpack of ''","create result of '' / '' in ''","create copy of '' from ''","create average of elements in array ''","create copy of element '' from array ''"],"dp3t":["create proximity tracing of infected ids","renew secret day key to a new day","create ephemeral ids for today"],"ecdh":["encrypt secret message '' with ''","create ecdh key with secret key ''","verify '' has a ecdh signature in '' by ''","verify '' has a signature in '' by ''","encrypt secret message of '' for ''","verify '' has a ecdsa deterministic signature in '' by ''","create signature of ''","verify '' has a ecdh deterministic signature in '' by ''","decrypt text of '' from ''","create ecdh key with secret ''","create ecdh deterministic signature of ''","create ecdh public key","decrypt text of '' with ''","create ecdh key","create ecdsa deterministic signature of ''","create ecdh signature of ''"],"eddsa":["create eddsa key with secret ''","verify '' has a eddsa signature in '' by ''","create eddsa key","create eddsa public key","create eddsa public key with secret key ''","create eddsa signature of ''","create eddsa key with secret key ''"],"es256":["create es256 public key","create es256 key with secret key ''","create es256 key with secret ''","create es256 public key with secret key ''","create es256 key","create es256 signature of ''","verify '' has a es256 signature in '' by ''"],"ethereum":["use ethereum transaction to create erc721 of uri ''","create string from ethereum bytes named ''","use ethereum transaction to store ''","use ethereum transaction to transfer erc721 '' from '' to ''","create ethereum abi decoding of '' using ''","create ethereum address","create ethereum address from ethereum signature '' of ''","use ethereum address signature pair array '' to create result array of ''","use ethereum transaction to run '' using ''","verify ethereum address signature pair array '' of ''","verify '' has a ethereum signature in '' by ''","create ethereum transaction to ''","use ethereum transaction to transfer '' erc20 tokens to ''","create ethereum key","create ethereum signature of ''","verify signed ethereum transaction from ''","create ethereum key with secret ''","create signed ethereum transaction","create ethereum abi encoding of '' using ''","verify ethereum address string '' is valid","use ethereum transaction to transfer erc721 '' in contract '' to '' in planetmint","use ethereum transaction to approve erc721 '' transfer from ''","create ethereum key with secret key ''","use ethereum transaction to create erc721 of object ''","create '' decoded from ethereum bytes ''","create signed ethereum transaction for chain ''","use ethereum transaction to transfer '' erc20 tokens to '' with details ''","create ethereum transaction of '' to ''"],"fsp":["create fsp key with secret key ''","create fsp response of '' with ''","create fsp ciphertext of ''","create fsp response with ''","create fsp key","create fsp cleartext of response ''","create fsp cleartext of response '' to ''","create fsp cleartext of ''","create fsp key with secret ''"],"http":["create http get parameters from ''","create url from ''","append percent encoding of '' as http request to ''","create http get parameters from '' using percent encoding","append '' as http request to ''"],"petition":["verify petition signature is not a duplicate","create a petition tally","count petition results","verify signature proof is correct","add signature to petition","create petition ''","verify petition signature is just one more","create petition signature ''","verify new petition to be empty"],"planetmint":["create planetmint signatures of ''"],"pvss":["create secret share with public key ''","compose pvss secret using '' with quorum ''","create pvss verified shares from ''","create pvss key","create pvss public shares of '' with '' quorum '' using public keys ''","create pvss public key","verify pvss public shares with '' quorum ''"],"qp":["create dilithium key","create ntrup kem for ''","create ntrup public key with secret key ''","create dilithium signature of ''","create dilithium public key","create ntrup public key","create kyber public key","create kyber secret from ''","create ntrup key","create kyber public key with secret key ''","verify '' has a dilithium signature in '' by ''","create kyber key","create dilithium public key with secret key ''","create kyber kem for ''","create ntrup secret from ''"],"reflow":["create reflow signature","add reflow signature to reflow seal","add reflow fingerprint to reflow seal","aggregate reflow seal array in ''","create reflow key with secret ''","create reflow seal with identity ''","verify material passport of ''","create material passport of ''","verify reflow signature credential","create reflow seal","create reflow identity of objects in ''","prepare credentials for verification","create reflow public key","verify reflow signature fingerprint is new","verify material passport of '' is valid","create reflow key","aggregate reflow public key from array ''","create reflow key with secret key ''","create reflow identity of ''","verify reflow seal is valid"],"schnorr":["create schnorr key with secret key ''","create schnorr key with secret ''","create schnorr public key with secret key ''","create schnorr public key","create schnorr key","verify '' has a schnorr signature in '' by ''","create schnorr signature of ''"],"sd_jwt":["create selective disclosure of ''","create signed selective disclosure of ''","create selective disclosure request from '' with id '' for ''","verify signed selective disclosure '' issued by '' is valid","verify disclosures '' are found in signed selective disclosure ''","use signed selective disclosure '' only with disclosures ''","create jwt key binding with jwk ''"],"secshare":["compose secret using ''","create secret shares of '' with '' quorum ''"],"w3c":["set verification method in '' to ''","create jwk of ecdh public key","verify '' has a jws signature in ''","create jwk of es256 public key with private key","create '' public key from did document ''","create jws header for p256 signature","create json web token of '' using ''","create jws signature of ''","create jwk of secp256k1 public key","create jwk of secp256r1 public key with private key","create jwk of p256 public key ''","create jws signature of header '' and payload ''","create jws header for es256 signature","create jws detached signature of header '' and payload ''","create jwk of secp256r1 public key ''","create jwk of secp256k1 public key with private key","create jws header for secp256r1 signature with public key","verify jws signature of ''","verify json web token in '' using ''","create jwk of es256k public key with private key","create jwk of ecdh public key ''","create serviceendpoint of ''","verify did document named '' is signed by ''","create jws header for ecdh signature","create jwk of ecdh public key with private key","create jws header for secp256k1 signature with public key","verify did document named ''","verify verifiable credential named ''","sign verifiable credential named ''","create jws header for es256k signature","create jws header for es256k signature with public key","create jwk of es256 public key ''","get verification method in ''","create jws header for p256 signature with public key","verify jws signature in ''","create verificationmethod of ''","create jwk of secp256r1 public key","create jwk of es256k public key","create jws header for secp256k1 signature","create jwk of p256 public key","create jws signature using ecdh signature in ''","create jwk of es256k public key ''","create jwk of secp256k1 public key ''","create jws header for ecdh signature with public key","create jwk of p256 public key with private key","create jws header for secp256r1 signature","create jws header for es256 signature with public key","create jwk of es256 public key"]}}