POTSHARDS: Secure Long-Term Storage Without Encryption

原文地址

summary:文章介绍了一种在不可信的存储提供商(Storage Service Provider)上建立长期文档的可信存储,采用的方法不是加密而是秘密分享(secret sharing)技术。首先文章谈到文档系统应该满足几个安全特性:

  1. 授权用户必须能够访问数据
  2. 即使缺少密钥,计算适当时间后也可以访问数据
  3. 保证数据的完整性,用户所读到的数据是之前写入的,而不是被篡改的。

关于因子分析

因子分析是模式识别中降维的一个重要方法,它把具有相关性的多个特征参数去相关性,提取出因子进行分析,有效的减少了计算量,但通过 SPSS 实验发现,如果进行因子分析后,得到的因子对分类的贡献值不相同,通过碎石图可以看到少量因子对聚类贡献大,更多的因子对聚类贡献小,如果把它们同等对待进行下一步的聚类(如 k-means 聚类)会严重影响聚类结果,导致还不如用一个因子进行聚类。下面是计算因子的方法: 继续阅读

Secret Sharing/Spliting 秘密分享

Secret Sharing 最早是 1979 年由 Adi Shamir 和 George Blakley 提出来的。很早看十万个为什么数学板块的时候,红楼梦里的王熙凤将百宝箱上了四把锁,将钥匙分为四份,每个人拿着两份,只有任意 2 个人一起来开箱子才能够把箱子打开(如下图),这应该也是一种(2-4)秘密分享的技术吧!但是这与现代的秘密分享还有不同。

 \begin{tabular}{||c||c||c||c||} \hhline{|t:=:t:=:t:=:t:=:t|}$Key_1$ & $Key_2$ & $Key_3$ &$Key_4$ \\ \hhline{|:=:b:=::=:b:=:|}\multicolumn{2}{||c||}{$User_1$}&\multicolumn{2}{c||}{}\\ \hhline{|:=:t:=:b:=:t:=:|}&\multicolumn{2}{c||}{$User_2$}&\\ \hhline{|:=:b:=:t:=:b:=:|}\multicolumn{2}{||c||}{}&\multicolumn{2}{c||}{$User_3$}\\ \hhline{|:=:t:=:b:=:t:=:|}{$User_4$}&\multicolumn{2}{c||}{}&{$User_4$}\\ \hhline{|b:=:b:==:b:=:b|} \end{tabular}

继续阅读

RAIDZ

一、什么是 RAIDZ

RAIDZ 是 SUN Microsystem 在其 ZFS 文件系统中采用的软件 RAID 的解决方案。

二、 RAIDZ 出现背景

RAIDZ 出现的背景是因为硬件 RAID 没有表现出其声称应达到快速、可靠的效果,存在问题之一就是一个称为 RAID-5 “ write hole ”的缺陷: RAID 的写实分为两步的,首先更新数据,其次更新校验(将新数据和旧校验异或以使得所有磁盘异或为零)。如果这个写的过程中发生断电、系统崩溃等故障时,这是磁盘上存储的数据和校验就不匹配了,如果没有一个好的日志或快照机制来进行恢复的话,错误的数据将永远保存在磁盘上而无法纠正,而这一切对用户都是不知道的。为解决这一问题,有用户采用昂贵的 NVRAM 进行断电保护。

三、RAIDZ

RAIDZ 并不是真正意义上的 RAID,而是一种更高层的解决方案,所以它不需要像 RAID 一样的额外设备,使用动态的条带宽度,并利用了 ZFS 中类似于 RAID 的一种完整性冗余机制——写时备份(COW,copy-on-write)解决了 RAID-5 的 “ write hole ”问题:首先数据写到一个新的位置,接着再改写原来指向旧数据的指针,避免了小写必须读后写的操作而在全条带上进行写,利用小块镜像来代替奇偶校验,这是因为能够知道文件系统存储结构并能够在需要的时候分配额外的空间,RAID-Z2 是 RAIDZ 的升级, RAIDZ 采用的是类似 RAID-5 的单个奇偶校验位,RAIDZ-Z2 是采用类似于 RAID-6 的两个奇偶校验,这样前者允许一个磁盘损坏,而后者可以允许两个磁盘损坏而不丢失数据。

四、其他

另外一个需要谈到的是 RAIDZ 是伴随着 ZFS 文件系统产生的, RAIDZ 可以利用 ZFS 文件数据的校验和与其他机制进行错误检测和更正,它对所有的数据进行校验并在有正确副本的时候对错误数据进行恢复。下图给出了硬件 RAID-5 和 RAIDZ 的速度比较,需要提出的时,硬件实现的速度快但 RAIDZ 优势在于不需要购买其他设备。

 

 

 

 

百度百科也通过 RAIDZ

怎样做出透过显示器的效果【例】

最近看到穿过显示器效果的一些图,创意不错就用 PS 简单做了一个,图片是手机现场拍得效果不是很好:

  1. 首先拍摄两张图片,只有显示器的与显示器之前的物体(你将要穿过的,我这里的是手)。
  2. 把两张图片在 PS 中对整齐,可以调整前一个图层的透明度。
  3. 把单独拍的显示器图层放在有物体(手)图层的后面,用钢笔或者直接选取工具将显示器的边框选取出来,切换到前一个图层应用这个选取的蒙版,将手遮挡显示器边框的位置遮挡住,这样就只显示了下一个图层的显示器边框。
  4. 调整显示器内手的饱和度和色阶,大功告成了。
  5. 下面上面两张是原始图片,下面一张是结果图。