Authenticate with SessionSigs
Once you have obtained SessionSigs
, you can replace where you provide an AuthSig
with the SessionSigs
object. Below are some examples using the Lit SDK.
Making Signing Requests
var unifiedAccessControlConditions = [
{
conditionType: "evmBasic",
contractAddress: "",
standardContractType: "",
chain: "ethereum",
method: "eth_getBalance",
parameters: [":userAddress", "latest"],
returnValueTest: {
comparator: ">=",
value: "10000000000000",
},
},
];
// Retrieving a signature
let jwt = await litNodeClient.getSignedToken({
unifiedAccessControlConditions,
sessionSigs,
});
Making Encryption Requests
var unifiedAccessControlConditions = [
{
conditionType: "evmBasic",
contractAddress: "",
standardContractType: "",
chain: "ethereum",
method: "eth_getBalance",
parameters: [":userAddress", "latest"],
returnValueTest: {
comparator: ">=",
value: "10000000000000",
},
},
];
const chain = "ethereum";
// encrypt
const { ciphertext, dataToEncryptHash } =
await LitJsSdk.zipAndEncryptString(
{
unifiedAccessControlConditions,
chain,
sessionSigs,
dataToEncrypt: "this is a secret message",
},
litNodeClient,
);
sessionSigs = await LitJsSdk.getSessionSigs({
chain,
litNodeClient,
resourceAbilityRequests: []
});
const decryptedFiles = await LitJsSdk.decryptToZip(
{
unifiedAccessControlConditions,
chain,
sessionSigs,
ciphertext,
dataToEncryptHash,
},
litNodeClient,
);
const decryptedString = await decryptedFiles["string.txt"].async(
"text"
);
console.log("decrypted string", decryptedString);
info
Not finding the answer you're looking for? Share your feedback on these docs by creating an issue in our GitHub Issues and Reports repository or get support by visiting our Support page.