本帖最后由 invertgeek 于 2024-9-5 20:50 编辑
项目地址: https://gitlab.com/ivgeek/mixfile 原理:
- 所有您上传的数据均储存于第三方图床网站
- 当上传100MB文件时,会自动将文件分割为100份
- 每份单独使用AES-GCM算法加密,然后使用隐写机制隐藏到一张空白图片中
- 然后把这100份图片上传到第三方网站
- 最后再把这100个图片的链接数据使用GZIP算法压缩然后AES加密后转换为二进制,再次隐写到一张图片中,作为索引文件储存
- 最后返回文件的分享码,分享码中包含本次加密使用的随机密钥以及索引文件地址等信息
- 下载时会先解析索引文件然后再根据索引下载其他文件
- 所有这些步骤都是自动完成的,而且采用kotlin协程并发优化,并且提供http api访问,和普通http直传调用无任何区别
支持在线播放经过加密隐写的视频 测试视频分享码(1个G,在服务端看来就是1000多张空白的图片): mf://demmGp0ywJ1A29dfuKpqbCCdBe6fmd15daMSjYm8UIvTxcZMXOS8u5r4ruWjPb8U4EF2Qdw2mvr07qpIKS37SMlfQpKS9OQc1vLDlReDGGAQqDmdlqp9snNTx5xk4BdaHGkLf0CYPqFStejRC7GpiDFwBoCRyGkeGZ4CaK75hM1ff4pIGwdVawE6ItsGPOeUSnWsJuE1n2xK5HXimrHrAqzNlQUoO8YWm4JfwGEdfSl |