GivingThanks

First Flight #28
Beginner FriendlyFoundry
100 EXP
View results
Submission Details
Severity: medium
Invalid

Inadequate Token URI Security

Description: The token URI generation includes sensitive data (donor address and amount) without encryption or privacy controls.

function _createTokenURI(address donor, uint256 date, uint256 amount) internal pure returns (string memory)

Impact:

  • Donor privacy concerns

  • Public visibility of donation amounts

  • Possible donor targeting

Recommended Mitigation: Implement optional privacy controls:

struct DonationMetadata {
address donor;
uint256 date;
uint256 amount;
bool isPrivate;
}
mapping(uint256 => DonationMetadata) private donationMetadata;
function _createTokenURI(uint256 tokenId) internal view returns (string memory) {
DonationMetadata memory metadata = donationMetadata[tokenId];
if (metadata.isPrivate) {
return _createPrivateURI(tokenId);
}
return _createPublicURI(metadata);
}
Updates

Lead Judging Commences

n0kto Lead Judge 12 months ago
Submission Judgement Published
Invalidated
Reason: Design choice

Support

FAQs

Can't find an answer? Chat with us on Discord, Twitter or Linkedin.