π MCV(Mnemonic Chain Vault)¶
ποΈ Project Overview¶
- Student ID: 20210456
- Name: Lee Sangbum
- Project Title: MCV(Mnemonic Chain Valut)
- Summary (3β4 sentences):
MCV protects memory from being manipulated with the power of AI and blockchain. MCV is creating a digital memory safe that can preserve the truth and deliver it to the next generation.
1. π§© Problem: What Problem Are You Solving?¶
β’ The Importance of Memory¶
Collective memory shapes identity, justice, and progress. When significant eventsβsuch as social movements or warsβare accurately recorded and preserved, societies can learn valuable lessons from the past, avoid repeating mistakes, and build a more informed and unified future. Preserving memory as objectively and truthfully as possible ensures that future generations understand their history, fostering empathy, accountability, and social cohesion.
β’ Covering the Truth by Censorship¶
Authoritarian regimes, interest groups, and malicious actors often conceal or distort inconvenient truths. Through their control, they manipulate or delete crucial evidence from the internet, flood platforms with disinformation, and erase the existence of certain events altogether. Even when evidence exists, it is frequently fragmented, unverifiable, or easily censored on centralized platforms.
2. π‘ Solution: Store Memory on Decentralized Storage and Blockchain¶
β’ Decentralized Storage¶
Traditional data storage often relies on a single countryβs or organizationβs servers, meaning that if those servers fail or data is intentionally deleted, the records may be lost. In contrast, combining blockchain with distributed storage technologies such as IPFS (InterPlanetary File System) ensures that identical data is stored across nodes worldwide. Even if a server or an entire country attempts to block the system, the remaining nodes can still recover the content, guaranteeing long-term preservation and stability.
β’ What Makes It different from Traditional Distributed Storage?¶
Existing decentralized storage services focus on storing the data. However, MCV not only stor data but also records the hash value of the data, CID, upload time, and wallet address of the uploader on the blockchain. In addition, among the uploaded data, historical events are selected and published.
β’ What if Inappropriate Content is Posted?¶
This service uses an AI-based content analysis model to automatically detect elements that can cause violence, sensationality, hate, and discomfort for all uploaded data, and additionally detects AI-generated content or fake news. AI only prevents inappropriate content from being posted in public indexes or service UI, and the original is stored in distributed storage, making it impossible to modulate or delete.
β’ System Workflow¶
3. π Why Blockchain (and Token)?¶
β’ Anonymous Upload Certificate¶
Blockchain does not store the data itself. However, by recording the hash of the file, CID, metadata, upload time, wallet address, blockchain guarantees evidence of when and who uploaded which CID.
β’ Censorship Resistance¶
In a centralized server structure, it is relatively easy for governments, large corporations, or specific interest groups to delete records or restrict access once they gain control of the server. In the blockchain network, it is impossible to specify who uploaded the data and to modify information about the data. This prevents authoritarian regimes or powerful groups from deliberately erasing historical records.
4. π οΈ MVP or Prototype¶
Current status: Idea only
β’ Concepts & Demo Images¶
If you upload files on Pinata, it assigns CID.
The following is a conceptual model for recording data on Base Sepolia Testnet, dveloped using REMIX. (Generated by Chatgpt 5)
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
contract ContentRegistry {
struct Content {
address uploader; // Uploader Address
bytes32 fileHash; // SHA-256 Hash
string cid; // IPFS CID
string description; // Description
uint256 timestamp; // Upload time
}
uint256 public count;
mapping(uint256 => Content) public contents;
event Registered(
uint256 indexed id,
address indexed uploader,
bytes32 fileHash,
string cid,
string description,
uint256 timestamp
);
/// @notice νμΌ μ 보μ μ€λͺ
μ λ±λ‘
/// @param _fileHash νμΌ SHA-256 ν΄μ (μμΌλ©΄ 0x00...00)
/// @param _cid IPFS CID
/// @param _description κ°λ¨ν μ€λͺ
function register(
bytes32 _fileHash,
string calldata _cid,
string calldata _description
) external returns (uint256 id) {
require(bytes(_cid).length > 0, "CID required");
require(bytes(_description).length > 0, "Description required");
id = ++count;
contents[id] = Content({
uploader: msg.sender,
fileHash: _fileHash,
cid: _cid,
description: _description,
timestamp: block.timestamp
});
emit Registered(id, msg.sender, _fileHash, _cid, _description, block.timestamp);
}
/// @notice κ°μ₯ μ΅κ·Ό ID λ°ν
function latestId() external view returns (uint256) {
return count;
}
/// @notice IDλ‘ μ‘°ν
function get(uint256 id) external view returns (
address uploader,
bytes32 fileHash,
string memory cid,
string memory description,
uint256 timestamp
) {
Content storage c = contents[id];
return (c.uploader, c.fileHash, c.cid, c.description, c.timestamp);
}
}


β’ Future Work¶
- Backend Upload & Transaction Script(Node.js) The file uploaded by the user is automatically uploaded to Pinata to obtain a CID, and a transaction is created using data including SHA-256 hash values and descriptions. File reception β SHA-256 calculation β IPFS upload (pin) β CID acquisition β On-chain transaction signing and transfer β Return result (νμΌ μμ β SHA-256 κ³μ° β IPFS μ λ‘λ(ν) β CID νλ β μ¨μ²΄μΈ νΈλμμ μλͺ Β·μ μ‘ β κ²°κ³Ό λ°ν)
- Frotend One-Click Service(Web Browser) File/Description input β Request upload to backend β Show progress/results (νμΌΒ·μ€λͺ μ λ ₯ β λ°±μλμ μ λ‘λ μμ² β μ§νμν©/κ²°κ³Ό 보μ¬μ£ΌκΈ°)
- Publisher Publish historical records
β’ Solutions for Permanent Preservation of Data¶
IPFS is not permanent because files are archived only when nodes pin it. We can propose a way for people to create IPFS nodes through their own storage, pin CID directly, and introduce a token economy that provides rewards for it.
5. π¬ Submission to Hackathons or Grant Programs¶
Exempted
6. π€ Reflection & Future Work¶
β’ Meaning¶
This was an attempt to record historical events in a decentralized way that escaped the influence of any company or country.
β’ The Biggest Challange: What information will be published?¶
The biggest challenge is to filter inappropriate content and disinformation while minimizing infringement of freedom of expression caused by censorship.
β’ Suggestions for Improvement¶
To increase the accuracy of AI filtering, it is necessary to introduce additional verification techniques such as deepfake detection and source authentication (C2PA). In addition, community governance functions can be introduced to consider more transparent and democratic decisions on whether to disclose data.
7. π References¶
- Hong Kong Protest Image File(https://amnesty.or.kr/campaign/hong-kong-protests-explained/)