Getting Started with Shield
Learn how to securely share files and messages using Shield’s trustless architecture.Prerequisites
Before you begin, make sure you have:- MetaMask or another Web3 wallet installed
- A small amount of ETH on Base Mainnet for gas fees
- The recipient’s wallet address
How to Share a Secure File
Step 1: Upload Your Content
- Visit Shield
- Click “Create Secure Link”
- Choose whether to upload a file or write a message
- If uploading a file, select it from your device
- If writing a message, type it in the text area
Your content is encrypted with AES-256 in your browser before being uploaded to IPFS.
Step 2: Configure Access Policy
Set the access rules for your secure link:- Recipient Address: Enter the Ethereum address that can access this content
- Expiration Time: Set when the link should expire
- The default is set to 3600 seconds (1 hour) and is customizable based on your preference
- Max Verification Attempts: Set how many failed access attempts before self-destructing
- The default is set to 3 attempts and is customizable based on your preference
Step 3: Sign Transaction & Share
- Click “Generate Link”
- Your wallet (MetaMask) will prompt you to sign a transaction
- Confirm the transaction to create the on-chain access policy
- Wait for the transaction to be confirmed on Base
- Copy the generated Shield link
- Share the link with your recipient via your preferred channel
The link looks like:
https://shieldhq.xyz/r/<policyId>How to Access a Shared File
Step 1: Open the Shield Link
- Click on the Shield link you received
- You’ll be redirected to the Shield receiver verification page
Step 2: Connect Your Wallet
- Click “Connect Wallet”
- Choose your wallet provider (MetaMask, WalletConnect, etc.)
- Approve the connection request
Step 3: Sign In with Ethereum (SIWE)
- Shield will ask you to sign a message to verify your identity
- Click “Sign” in your wallet
- This signature proves you own the wallet without making a transaction
This step doesn’t cost any gas - it’s just a cryptographic signature.
Step 4: View Content
If your wallet address matches the recipient address and the policy is still valid:- Shield’s backend verifies your signature with the smart contract
- The decryption key is released to your browser
- Your browser downloads the encrypted content from IPFS
- The content is decrypted locally in your browser
- You can now view or download the file/message
Security Best Practices
Verify the recipient address
Verify the recipient address
Always double-check the recipient’s wallet address before creating a policy. Smart contract policies are immutable once created.
Set appropriate expiration times
Set appropriate expiration times
For highly sensitive content, use shorter expiration times (1-24 hours). For less sensitive content, longer periods are fine.
Share links securely
Share links securely
Max attempts protection
Max attempts protection
Set max verification attempts to 3-5 to protect against brute force attacks or unauthorized access attempts.