rustvital-amd / src /web3 /cid.rs
brainworm2024's picture
Final live AMD GPU integration, audit fix
74f2b46
use crate::errors::AppError;
use cid::Cid;
use sha2::{Digest, Sha256};
pub fn generate_cid(data: impl AsRef<[u8]>) -> Result<String, AppError> {
let digest = Sha256::digest(data.as_ref());
let mh = cid::multihash::Multihash::wrap(0x12, &digest)
.map_err(|e| AppError::Other(anyhow::anyhow!("invalid multihash: {:?}", e)))?;
let cid = Cid::new_v1(0x55, mh);
Ok(cid.to_string())
}