CN104040934B - 当被云服务操控时保护图像隐私 - Google Patents

当被云服务操控时保护图像隐私 Download PDF

Info

Publication number
CN104040934B
CN104040934B CN201180075549.1A CN201180075549A CN104040934B CN 104040934 B CN104040934 B CN 104040934B CN 201180075549 A CN201180075549 A CN 201180075549A CN 104040934 B CN104040934 B CN 104040934B
Authority
CN
China
Prior art keywords
subgraph
pixel value
encrypted
image
key
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN201180075549.1A
Other languages
English (en)
Other versions
CN104040934A (zh
Inventor
D·M·德拉姆
龙门
K·S·格雷瓦尔
P·德万
X·康
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
Intel Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intel Corp filed Critical Intel Corp
Publication of CN104040934A publication Critical patent/CN104040934A/zh
Application granted granted Critical
Publication of CN104040934B publication Critical patent/CN104040934B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/27Server based end-user applications
    • H04N21/274Storing end-user multimedia data in response to end-user request, e.g. network recorder
    • H04N21/2743Video hosting of uploaded data from client
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6263Protecting personal data, e.g. for financial or medical purposes during internet communication, e.g. revealing personal data from cookies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/44Secrecy systems
    • H04N1/448Rendering the image unintelligible, e.g. scrambling
    • H04N1/4486Rendering the image unintelligible, e.g. scrambling using digital data encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4408Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream encryption, e.g. re-encrypting a decrypted video stream for redistribution in a home network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8146Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics
    • H04N21/8153Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics comprising still images, e.g. texture, background image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Medical Informatics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Computing Systems (AREA)
  • Facsimile Transmission Control (AREA)
  • Storage Device Security (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

用于当被云服务操控时保护图像隐私的装置和方法,包括用于接收原始图像并且将所述原始图像分割为两个子图像的中间件,其中,所述子图像的RGB像素值具有比所述原始图像的RGB像素值小的比特值。通过将密钥流加到所述子图像的RGB像素值来对所述子图像进行加密。所述子图像数据被传输到诸如社交网络或照片共享站点的云服务,该云服务通过调整尺寸、裁剪、滤波等等来操控所述图像。所述子图像数据被所述中间件接收并且被成功地解密,而不管由云服务执行的操控如何。在替代实施例中,当被加密时,对所述原始图像的块进行排列,并且接着当被解密时,对所述原始图像的块进行逆向排列。

Description

当被云服务操控时保护图像隐私
技术领域
实施例通常涉及图像加密,并且更具体地涉及当图像被诸如照片共享网站的云服务托管或者以其它方式操控时保护图像隐私。
背景技术
图像处理和存储功能正在被迅速地集成到云中。当今图像上传或照片共享很普遍,并且不断扩大。诸如Google 等等的公知站点存储数十亿的照片。随着图像存储的爆炸性增长,隐私关注已经开始浮出水面,用户担心他们的个人数据和照片可能被站点本身或者其它未知用户滥用。
服务供应商网站上公开可用的照片可以用于在商场、大学校园中或者在公共街道上标识陌生人,例如,简单地通过执行面部识别并且将照片匹配到姓名或者服务供应商的网站上可用的其它标识信息。存在越来越多的包括照片共享网站的数据库的黑客事件。黑客或其他不良行动者会出于非法原因而操控原始图像的内容。还有其他用户会下载或者以其它方式非法闯入照片,将它们保存到外部介质,或者将它们上传到其它网站,而原来的主人没有任何有效的访问控制措施,从而允许接触到副本的任何人访问原始内容。
图1说明了其中黑客或其他人获得对照片的访问的传统系统。可以由人110操作并且可以包括计算机115、智能电话120、个人数字助理(PDA)125或者相机130等等的用户应用105,可以将图像135上传到云服务140。用户应用105或者其他被授权人士接着可以在165处浏览图像。然而,可以包括人155或计算机160或者其他未经授权的人等等的黑客150,可以在145处通过访问云服务140而获得对图像135的访问。
有时用户将敏感文件扫描到照片中并且将它们存储在照片共享站点中,不理解被其他人容易访问的后果。在其它情况下,用户可能希望仅与关系密切的家庭成员或朋友共享某些照片,或者以其它方式不想要服务供应商具有对照片内容的访问。传统的加密技术是无效的,因为照片共享网站通常对上传的图像进行后处理,例如调整尺寸、滤波、裁剪等等。这样的后处理操作改变加密的内容的值,并且随后的解密的内容将是完全的乱码而不是恢复到原始图像内容。
另一个混合的因素是目前常用的图像压缩算法,例如联合图像专家组(JPEG)图像,具有包括浮点运算误差以及量化损失的有损压缩算法,其与标准加密算法不兼容。当文件内容在外部被修改时,关于加密和密钥流的传统异或方案被打破。尽管全同态加密对这样的操作更有强适应力,但是现在是不切实际的,因为对于照片的加密和解密,仅加密一个比特要求数兆字节的密钥以及数小时的计算时间。
期望对被存储并且接着被从照片共享网站或其它类似的云服务取回的加密的图像进行有效而正确的解密,特别是在由云服务执行后处理操作之后。
附图说明
通过示例而非限制的方式说明本发明的实施例,在附图中,类似的附图标记指代类似的元件。
图2说明了根据本发明示例实施例包括用于保护图像隐私而与云服务的图像操控无关的中间件的系统。
图3说明了与图2的中间件相关联的方面的流程图。
图4说明了与图2的中间件相关联的额外的方面的流程图。
图5和图6说明了包括与图2的中间件相关联的数据库的方框图。
图7说明了展示用于对图像进行加密并且将该图像上传到云服务的技术的流程图。
图8说明了展示用于从云服务接收图像并且对该图像进行解密的技术的流程图。
图9说明了根据本发明另一示例实施例与对图像的块进行排列和加密相关的流程图和方框图。
图10说明了与对图9的图像进行解密相关的流程图和方框图。
图11说明了根据本发明又一示例实施例具有附接到其的加密的打印的图像的物理对象的方框图。
具体实施方式
现在将详细参照本发明的实施例,在附图中说明了这些实施例的示例。在下面的详细描述中,对许多具体细节进行了阐述以便能够充分理解本发明。然而,应当理解的是,本领域的普通技术人员可以在没有这些具体细节的情况下来实践本发明。在其它实例中,没有详细地描述公知的方法、过程、部件、电路和网络以免不必要地模糊实施例的方面。
将理解的是,尽管在本文可以使用术语第一、第二等等来描述各种元件,但是这些元件不应该受这些术语限制。这些术语仅用于将元件彼此区分开。例如,第一图像可以被称为第二图像,并且类似地,第二图像可以被称为第一图像,而不偏离本发明的范围。
本文在本发明的说明书中使用的词语仅仅是为了描述特定实施例的目的并且并不意在限制本发明。如在本发明的说明书和所附权利要求中使用的,单数形式的“一(a)”、“一个(an)”和“所述(the)”意在也包括复数形式,除非上下文以其它方式明确指示。也应当理解的是,本文使用的词语“和/或”指代并且包括一个或多个相关联的所列项目中的任意以及所有可能的组合。进一步应当理解的是,词语“包括(comprises)”和/或“包括着(comprising)”,当在本说明书中使用时,指定所表述的特征、整数、步骤、操作、元件和/或部件的存在,但是不排除一个或多个其它特征、整数、步骤、操作、元件、部件和/或其组的存在或添加。
描述了用于当被云服务托管或者以其它方式操控时保护图像隐私的装置和方法、用于使用这样的装置的相关联的过程、以及可以使用这样的装置和方法的相关联的系统的实施例。
图2说明了根据本发明示例实施例包括用于保护图像隐私而与云服务140的图像操控无关的中间件205的系统200。用户应用105可以被人110操作,并且可以包括计算机115、智能手机120、个人数字助理(PDA)125、或者相机130等等,该用户应用105可以将加密的图像235上传到云服务140。用户应用105可以包括或者以其他方式与中间件205相关联。中间件205及其部件可以实现在硬件、软件、固件或其任意组合中。
中间件205使用对云服务140的操控有强适应性的方法来对图像进行加密。云服务140可以例如包括社交网络或照片存储站点,其通常对图像进行调整尺寸、滤波、裁剪、或者以其它方式进行重新格式化,从而使传统的加密技术不能工作。本发明的实施例允许用户保护选定的照片的隐私,将这些照片上传到任何照片共享网站或者其它云服务,并且将照片正确地解密回到原始图像,而与照片共享网站的典型的后端处理无关。因而,不需要改变现有的网站或云计算模型。而且,使用本文公开的实施例的加密和解密目前是切实可行的,并且对于每一张照片能够在不到一秒钟的时间内有效地实现。
如图2所示,中间件205将加密的图像235传送到云服务,以使得如果可以包括人155或计算机160的黑客150尝试访问该图像,则所有他们将获得的是密文245,并且因此将无法查看图像。另一方面,具有适当的中间件205和适当的密钥的被授权用户,可以在265处浏览图像并且对图像240进行正确的解密用于随后查看,而与云服务140对图像的滤波、调整尺寸、裁剪或其它操控无关。
中间件205可以从用户105接收原始图像。中间件205包括分割器220,其可以将图像分割为第一子图像和第二子图像,如在下面进一步详细描述的。中间件205包括加密部分210,其可以对第一和第二子图像进行加密,并且产生第一和第二加密的子图像,也如在下面进一步详细描述的。
随机数生成器(RNG)215用于生成某些加密密钥,例如将被存储在数据库225中的主密钥,以及将被存储在图像的元数据中的图像密钥。在第一和第二加密的子图像被传输到云服务140并且被云服务140操控之后,该图像能够由中间件205接收并且解密,这可以与相同的用户应用105或另一被授权的用户应用相关联。中间件205包括用于对第一和第二子图像进行解密的解密部分230以及用于将该第一和第二子图像组合为实质的原始图像的组合器222。
图3说明了与图2的分割器220和加密部分210相关联的方面的流程图。原始图像305包括像素302。将理解的是,图像305可以具有任何合适数量的像素,并且在图中示出的放大的像素仅仅是为了说明的目的。每一个像素302包括诸如RGB pixel_value_A(u,v)的相关联的红/绿/蓝(RGB)像素值,其中对于每一个像素,u是行索引并且v是列索引。通常,RGB像素值是8比特,其可以表示0和255之间的不同的值或色调。将理解的是,本文描述的实施例和创造性概念适用于16比特RGB像素值,或者任何其它合适的值。分割器220可以将原始图像305分割为子图像310和子图像315。
子图像310的RGB像素值的每一个,例如RGB pixel_value_B(u,v),将具有0和127之间的不同的值或色调的范围。类似地,子图像315的RGB像素值的每一个,例如RGB pixel_value_C(u,v),将具有0和127之间的不同的值或色调的范围。这样的特性允许将密钥流加到该子图像的RGB像素值而不会造成数学进位,这否则会导致负的或无效的结果。
对于子图像310的RGB像素值的每一个,加密部分210加上相对应的密钥流值,例如keystream(u,v),其可以是对于每一个RGB像素值生成的7比特随机数320。例如,可以使用如在325处示出的下面的等式(1):
pixel_cipher_B(u,v)=pixel_value_B(u,v)+keystream(u,v,“0”) (1)
类似地,对于子图像315的RGB像素值的每一个,加密部分210加上相对应的密钥流值,例如keystream(u,v),其可以是对于每一个RGB像素值生成的7比特随机数320。例如,可以使用如在330处示出的下面的等式(2):
pixel_cipher_C(u,v)=pixel_value_C(u,v)+keystream(u,v,“1”) (2)
等式(1)和(2)中的keystream()中的区别“0”和“1”分别表示加密密钥对于不同的子图像不重复,这增加了安全性保证。换句话说,pixel_cipher_B与pixel_cipher_C使用不同的密钥流。分割器220可以首先确定对于原始图像的每一个像素的RGB像素值,接着将原始图像的每一个RGB像素值分割为第一分割的RGB像素值(例如,RGB pixel_value_B(u,v))和第二分割的RGB像素值(例如,RGB pixel_value_C(u,v))。每一个分割的RGB pixel_value_B(u,v)可以与子图像310的相对应的RGB像素值相关联。类似地,每一个分割的RGBpixel_value_C(u,v)可以与子图像315的相对应的RGB像素值相关联。接着可以加上相对应的密钥流(u,v)。
将理解的是,可以对与该图像相关联的系数和/或像素或者该图像的任何中间压缩步骤执行这样的操作。例如,JPEG照片在压缩期间经历几个中间步骤,并且可以与和JPEG压缩相关联的任何中间或最终步骤相关地对这样的JPEG照片执行本文描述的分割和加密方面,从而减少计算误差。因此,该加密部分210能够产生第一加密的子图像和第二加密的子图像,它们可以一起被表示为G(data+keystream),如在335处示出的。
中间件205可以将包括第一和第二加密的子图像的G(data+keystream)传输到云服务140。云服务140可以执行各种后处理函数,这里被表示为f(.),诸如调整尺寸、裁剪和滤波。
图4说明了与图2的解密部分230和组合器222相关联的额外的方面的流程图。在405处,中间件205的解密部分230可以从云服务140接收f(G(data+keystream))。解密部分230可以接着对f(G(data+keystream))进行解密以便恢复原始图像。对于第一加密的子图像310的每一个RGB像素值,解密部分230减去相对应的重构的密钥流值(例如,f(G(keystream)))。类似地,对于第二加密的子图像315的每一个RGB像素值,解密部分230减去从多个修正的密钥流值中选择的相对应的重构的密钥流值(例如,f(G(keystream)))。例如,可以使用如在410处示出的下面的公式(3):
recover_image=f(G(data+keystream))-f(G(keystream)) (3)
G(keystream)可以通过预定义的后处理函数f(.)进行修正,该后处理函数f(.)可以被存储在数据库225中并且与云服务标识符(ID)440相关联。数据库225可以存储与任意数量的不同的云服务相关联的多个不同的后处理函数,每一个具有其自己的ID。例如,如果照片存储站点被已知为要通过一定的比例来调整图像尺寸,则将这样的函数存储在数据库225中并且通过相关联的站点ID进行标识。而且,可以基于使用经验和在受云服务站点影响时对图像执行的后处理函数的分析来确定这样的后处理函数。ID440也可以被存储在图像的元数据中,如下面进一步描述的。
解密部分230使用存储在数据库225中的主密钥来生成正确的密钥流,其与所应用的后处理函数f(.)一起产生f(G(keystream)。f(G(keystream)用于对图像数据进行解密,如在410,415和420处进一步示出的。下面提供关于主密钥的进一步细节。
几乎所有图像处理算法都具有加法性和同质性,加法性是其中f(x+y)等于f(x)+f(y)。同质性是其中f(a*x)等于a*f(x),其中a是标量值。由于这些属性,如在415处示出的,可以将等式(3)重写为下面的等式(4):
recover_image=f(G(data))+f(G(keystream))-f(G(keystream))(4)
如在420处示出的,等式(4)可以被简化为下面的等式(5):
recover_image=f(G(data)) (5)
恢复的图像(即,recover_image)与解密的子图像310和315相对应。解密的子图像可以通过组合器222被组合为实质的原始图像305。
图5和图6说明了包括与图2的中间件205相关联的数据库225的方框图。加密部分210可以产生主密钥505,其被存储在数据库225中。更具体地说,RNG215可以产生主密钥505,其优选地是256比特的强加密随机数。此外,对于每一个图像,RNG215能够产生用于生成图像密钥的随机数(即,Rnumber510)。Rnumber510可以被嵌入在图像520的元数据525中,并且优选地是128比特的随机数。元数据525也可以存储如上所述的ID440。
通过加密部分210和解密部分230中的任意一个或两个,至少使用主密钥505,能够生成密钥流,如在图5和图6中示出的。例如,如在535和635处示出的,下面的函数(6)可以用于生成密钥流:
keystream=Encrypt(image_key,pixel_index) (6)
如在(6)中阐述的,Encrypt(.)函数可以是高级加密标准(AES)密码或任何其它合适的加密算法。pixel_index与图像的(u,v)像素索引位置相对应。image_key用于保证图像的每一个实例基于在(7)中推导的image_key将具有不同的密钥流,如下面进一步阐释的。换句话说,使用image_key和pixel_index生成上面讨论的密钥流值。
如在图5的530以及图6的630处示出的,可以通过加密部分210和解密部分230中的任意一个或两个,至少使用Rnumber510,根据下面的函数(7)来生成image_key:
image_key=kdf(master_key,Rnumber||Aux) (7)
如在(7)中阐释的,kdf(.)函数可以是标准密钥推导函数,或者是基于密码的或者是基于散列的。Aux可以与辅助数据相对应,例如用于安全目的。
中间件205的加密部分210可以使用(6)和/或(7)来对图像进行加密。同样,中间件205的解密部分230可以使用(6)和/或(7)来对图像进行解密。由于中间件205是能够产生密钥流的唯一实体,因此只有具有主密钥505的中间件205才能够对图像进行解密。
图7说明了用于对图像进行加密并且将该图像上传到云服务的技术的流程图700。该技术开始于705,其中中间件从用户或用户应用接收图像。在710处,对该图像进行解压缩以便恢复RGB像素值。在715处,图像被分割为两个子图像。与子图像725和子图像720的每一个RGB像素值相关联的比特数目小于与原始图像的每一个RGB像素值相关联的比特数目。在730处,中间件生成密钥流,其在740和735处被加到子图像,如上面详细解释的。可以在加上密钥流之后或者期间来执行图像压缩。在755处,在750和745处加密的子图像由中间件上传到云服务。
图8说明了用于从云服务接收图像并且对该图像进行解密的技术的流程图800。在805处,云服务对加密的子图像执行后处理操作。在810处,中间件从云服务接收加密的子图像。在820和815处,加密的子图像准备用于由中间件的解密部分进行解密。在830和825处,使用诸如JPEG的图像解压缩算法对子图像进行解压缩。在835处,中间件生成修正的密钥流,如上面详细解释的,并且在845和840处,从子图像中减去转修改后的密钥流,或者在解压缩期间或者在解压缩之后。流程进行到855和850处的解密的子图像,在860处该解密的图像被重新组合或者以其它方式重构为原始图像。
图9说明了根据本发明另一示例实施例与对图像905的块(例如,(1),(2),...,(16))进行排列和加密相关的流程图和方框图900。图10说明了与对图9的图像905进行解密相关的流程图和方框图。现在参照图9和图10。
图像905的块可以被定义为具有特定的尺寸或者以其它方式被划分为N个块,每一个块包括一些数量的像素。例如,具有1024乘2048像素的图像可以具有被定义为64乘64像素的块尺寸。在这种情况下,块的总数量将是512。加密部分210可以从N的阶乘个排列中选择排列。换句话说,加密部分210可以按照512!(512的阶乘)种不同的方式来排列块,甚至大于2512。换言之,加密部分210可以接着基于所选择的排列来排列图像的N个块。
基于,可以被存储在图像905的文件头915中或者以其它方式与该文件头915相关联的密钥925,中间件205只能从所有可能的512!(512的阶乘)个可能性中选择一个,这对于没有密钥925的任何第三方进行正确的猜测实际上是不可行的。这与例如七巧板是完全不同的,在七巧板中,只有一个最终的图案并且片包括各种形状来帮助进行取向。排列导致图像905的文件内容910被打乱在排列的图像930的文件内容920中。人类用户对如何重构该取向不存在可用的线索。中间件205可以接着将排列的图像930上传到云服务140,该云服务140可以对排列的图像执行后处理函数(例如,f(.))。
如图10所示,排列的图像接着被从云服务140接收并且使用解密部分230被解密。例如,解密部分230可以使用密钥925来对排列进行解密并且将所排列的图像930的文件内容920返回到实质的原始图像905的文件内容910。
更具体地,可以通过生成密钥流并且通过使用密钥925和流密码F(.)来执行安全排列。加密部分210可以接收具有某一尺寸(例如,高×宽)的图像。能够使用预定义的块尺寸M。加密部分210也可以接收和/或生成密钥825、流密码F(.)、以及密钥推导函数(例如,kdf(.))。加密部分210能够输出instance_random H以及排列的图像。
下面是这种方法的示例要素:
1.生成块的索引;例如,a[0]=0,a[1]=1,...,a[N]=N。
2.对于中间件的每一个实例,通过排列对照片进行加密,生成随机数H(例如,128比特),这里被称为instance_randomH。
3.instance_key=kdf(K,H),其中,K是密钥925,每一个instance_key可以是独特的密钥以便增加安全性。
4.keystream=F(instance_key,counter),其中计数器可以从0开始增加。
5.密钥流(keystream)是比特流(例如,1000111111110)。可以选择数字u,其中2u是大于N的最小整数。密钥流的每2u个比特可以是分区或单元。例如:u=3→keystrream[0]=100,keystrream[1]=011,依此类推。
6.对于(for)j从N减少到2
a.dj=keystream[j]以N为模(例如,交换位置由流密码确定)
b.交换a[dj]和a[j-1]
7.结束for循环(endfor)
8.根据a[j],对于j从0到N,排列图像的块。
根据上面的算法,加密部分210可以排列图像的块。解密部分230可以访问密钥K(例如,925)和隐私线索H(即,instance_randomH)以便生成排列序列。排列然后可以被逆向并且原始图像被重构。流密码F(.)和推导函数kdf(.)可以是公开的,并且H是用作实例标识符的随机数。
换句话说,本文公开的方法包括从N的阶乘个排列中选择排列。能够生成密钥流。可以基于密钥流以及所选择的排列来排列N个块。基于密钥流,该N个块中的每一个块可以与另一个块进行交换。能够确定N个交换位置。例如,交换位置可以基于以N为模的keystream[j],其中j是到密钥流的索引。索引j可以从N递减到2。可以交换位置处将N个块中的每一个块与该N个块中的另一个块进行交换。
图11说明了根据本发明又一示例实施例具有附接到其的加密的打印的图像1110的物理对象1105的方框图1100。
中间件205可以使用上面详细描述的一个或多个技术来对图像进行加密。该图像接着可以被物理转换,如在1120处示出的。物理转换可以包括调整尺寸、缩放、压缩、剪切等等,并且可以对电子加密图像和/或位于物理打印的介质上的加密图像执行该物理转换。图像可以被打印在物理介质上,从而产生打印的图像1110。打印的图像1110是杂乱的或者否则在没有适当的解密算法和密钥的情况下是不可破译的。因此,阻止黑客或其它对手解释该打印的图像1110。与容易被黑客或其它第三方截获和解释的条形码不同,加密的图像允许在物理的非电子世界中安全地传输信息。可以将打印的图像附接到物理对象1105。该物理对象可以例如是包、符号、纸张、显示器、杂志、报纸等等。物理对象还可以是屏幕或显示器,例如移动屏幕、电视屏幕、计算机显示器、手机显示器等等。
可以例如使用相机和/或扫描仪1115对打印的图像1110进行拍摄或扫描。换句话说,可以捕获打印的图像1110的数字图像。中间件205能够使用上面详细描述的一种或多种技术来对该数字图像进行解密。解密算法可以重构原始图像,或者至少原始图像的近似,因为中间件205访问主密钥和用于对所拍摄或扫描的图像进行解密的其它部件和算法,虽然进行了加密的图像的物理转换1120。
按照这种方式,可以使用视觉密码学的形式来隐蔽地传输图像,这可以用于广告、订阅服务、观众选择、游戏、安全社交联网、包括其它可能性。例如,图像可以被隐私地或隐蔽地从中间件传输到物理对象,接着传输到诸如相同或不同的中间件的端点。因而,图像可以被保持保密或隐私,即使当暴露于外部物理世界情境时。
尽管描述了特定实施例,但是将意识到,本发明的原理并不局限于那些实施例。实施例包括用于使用已经被后端服务接受的有损数据格式将加密的图像数据上传到网站(例如,社交媒体和/或云服务)的中间件,该有损数据格式使用新的对损失有强适应性的加密算法。有强适应性的加密的图像密文可以被后端云服务操控(例如,压缩、裁剪、转换、滤波等等),而假定由授权方使用的密文和秘密解密密钥的情况下,仍然能够恢复近似的原始图像。
加密的图像可以在保持安全(即,加密)的情况下被下载、复制、移动、操控以及上传到其它网站,因此只有具有正确密钥的一方才能够使用本文所公开的一个或多个有强适应性的加密算法来对图像进行解密并且恢复近似的原始图像。专门的硬件或硬件加速器可以用于对有强适应性的加密算法进行加速。中间件可以包括在通用计算机、平板电脑、智能手机、超级本、服务器等等中。本文公开的实施例增强图像和介质的隐私,允许对密文的操控,同时提供恢复原始明文内容的能力。
在一些实施例中,物品从包括软盘、光盘、固定磁盘、易失性存储器、非易失性存储器、随机存取存储器、只读存储器、或者闪存的介质的集合中得到,该物品包括具有相关联的非暂态指令的机器可访问介质,当在测试和测量设备中执行时,该指令使机器执行如本文公开的本发明各种实施例的步骤。在不偏离如在下面的权利要求中阐述的本发明的原理的情况下,可以做出其它变化和修改。

Claims (15)

1.一种用于保护图像隐私的方法,包括:
接收原始图像;
将所述原始图像分割为第一子图像和第二子图像,所述第一子图像和所述第二子图像中的每一个与所述原始图像具有相同数量的像素;
对于所述第一子图像的多个像素值中的每一个,加上从多个密钥流值中选择的第一相对应的密钥流值;
产生第一加密的子图像;
对于所述第二子图像的多个像素值中的每一个,加上从所述多个密钥流值中选择的第二相对应的密钥流值,所述第二相对应的密钥流值与所述第一相对应的密钥流值不同;
产生第二加密的子图像;并且
将所述第一加密的子图像和所述第二加密的子图像存储为数据以用于传输到能够公开访问的存储设施。
2.根据权利要求1所述的方法,其中,所述像素值是红/绿/蓝(RGB)像素值,并且其中,分割进一步包括:
确定对于所述原始图像的多个像素中的每一个的RGB像素值;
将所述原始图像的每一个RGB像素值划分为第一分割的RGB像素值和第二分割的RGB像素值;
将所述第一分割的RGB像素值中的每一个与所述第一子图像的相对应的RGB像素值相关联;并且
将所述第二分割的RGB像素值中的每一个与所述第二子图像的相对应的RGB像素值相关联。
3.根据权利要求1所述的方法,其中,传输到所述能够公开访问的存储设施包括将所述第一加密的子图像和所述第二加密的子图像传输到云服务。
4.根据权利要求3所述的方法,其中,所述像素值是RGB像素值,所述方法进一步包括:
从所述云服务接收所述第一加密的子图像和所述第二加密的子图像;
对于所述第一子图像的每一个RGB像素值,减去从多个修正过的密钥流值中选择的相对应的修正过的密钥流值;
产生第一解密的子图像;
对于所述第二子图像的每一个RGB像素值,减去从所述多个修正过的密钥流值中选择的相对应的修正过的密钥流值;并且
产生第二解密的子图像。
5.根据权利要求4所述的方法,进一步包括:
将所述第一解密的子图像和所述第二解密的子图像组合为所述原始图像或者所述原始图像的重构版本。
6.根据权利要求4所述的方法,进一步包括:
产生主密钥;
将所述主密钥存储在数据库中;
至少使用所述主密钥来生成所述多个密钥流值;
根据预定义的后处理函数来修正所述多个密钥流值,从而产生所述多个修正过的密钥流值。
7.根据权利要求6所述的方法,进一步包括:
使用随机数发生器产生随机数;
将所述随机数存储在所述第一子图像和所述第二子图像中的至少一个的元数据中;并且
至少使用所述随机数来生成图像密钥。
8.根据权利要求6所述的方法,进一步包括:
将所述预定义的后处理函数关联到云服务的标识符;
将所述标识符存储在所述第一子图像和所述第二子图像中的至少一个的元数据中;并且
使用所述标识符来标识所述预定义的后处理函数。
9.一种用于保护图像隐私的装置,包括:
用于接收原始图像的单元;
用于将所述原始图像分割为第一子图像和第二子图像的单元,所述第一子图像和所述第二子图像中的每一个与所述原始图像具有相同数量的像素;
用于对于所述第一子图像的多个像素值中的每一个,加上从多个密钥流值中选择的第一相对应的密钥流值的单元;
用于产生第一加密的子图像的单元;
用于对于所述第二子图像的多个像素值中的每一个,加上从所述多个密钥流值中选择的第二相对应的密钥流值的单元,所述第二相对应的密钥流值与所述第一相对应的密钥流值不同;
用于产生第二加密的子图像的单元;以及
用于将所述第一加密的子图像和所述第二加密的子图像存储为数据以用于传输到能够公开访问的存储设施的单元。
10.一种中间件装置,包括:
分割器,被配置用于将原始图像分割为第一子图像和第二子图像,所述第一子图像和所述第二子图像中的每一个与所述原始图像具有相同数量的像素;
加密部分,被配置用于:
将所述第一子图像的多个像素值中的每一个加到从多个密钥流值中选择的第一相对应的密钥流值;
产生第一加密的子图像;
将所述第二子图像的多个像素值中的每一个加到从所述多个密钥流值中选择的第二相对应的密钥流值,所述第二相对应的密钥流值与所述第一相对应的密钥流值不同;并且
产生第二加密的子图像;以及
物理存储器,被配置用于接收所述第一加密的子图像和所述第二加密的子图像并且将所述第一加密的子图像和所述第二加密的子图像存储为数据。
11.根据权利要求10所述的中间件装置,其中,所述像素值是红/绿/蓝(RGB)像素值,并且其中,所述分割器被进一步配置用于:
确定对于所述原始图像的多个像素值中的每一个的RGB像素值;
将所述原始图像的每一个RGB像素值划分为第一分割的RGB像素值和第二分割的RGB像素值;
将所述第一分割的RGB像素值中的每一个与所述第一子图像的相对应的RGB像素值相关联;并且
将所述第二分割的RGB像素值中的每一个与所述第二子图像的相对应的RGB像素值相关联。
12.根据权利要求10所述的中间件装置,其中,所述中间件被配置用于将所述第一加密的子图像和所述第二加密的子图像传输到云服务。
13.根据权利要求10所述的中间件装置,其中,所述像素值是RGB像素值,所述装置进一步包括:
解密部分,被配置用于:
从所述第一子图像的每一个RGB像素值减去从多个修正过的密钥流值中选择的修正过的密钥流值;
产生第一解密的子图像;
从所述第二子图像的每一个RGB像素值减去从所述多个修正过的密钥流值中选择的修正过的密钥流值;并且
产生第二解密的子图像;以及
组合器,被配置用于将所述第一解密的子图像和所述第二解密的子图像组合为实质的所述原始图像。
14.根据权利要求10所述的中间件装置,进一步包括:
随机数发生器,被配置用于产生主密钥;以及
数据库,被配置用于存储所述主密钥,
其中,所述加密部分被配置用于至少基于所述主密钥来生成所述多个密钥流值。
15.根据权利要求10所述的中间件装置,进一步包括:
随机数发生器,被配置用于产生能够存储在所述第一子图像和所述第二子图像中的至少一个的元数据中的随机数;以及
至少基于所述随机数的图像密钥。
CN201180075549.1A 2011-12-15 2011-12-15 当被云服务操控时保护图像隐私 Expired - Fee Related CN104040934B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2011/065284 WO2013089758A1 (en) 2011-12-15 2011-12-15 Preserving image privacy when manipulated by cloud services

Publications (2)

Publication Number Publication Date
CN104040934A CN104040934A (zh) 2014-09-10
CN104040934B true CN104040934B (zh) 2018-04-24

Family

ID=48613036

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180075549.1A Expired - Fee Related CN104040934B (zh) 2011-12-15 2011-12-15 当被云服务操控时保护图像隐私

Country Status (4)

Country Link
US (1) US9276745B2 (zh)
EP (1) EP2791855B1 (zh)
CN (1) CN104040934B (zh)
WO (1) WO2013089758A1 (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013147908A1 (en) 2012-03-31 2013-10-03 Intel Corporation Methods and systems for cryptographic access control of video
US9160722B2 (en) * 2012-04-30 2015-10-13 Anchorfree, Inc. System and method for securing user information on social networks
US9396310B2 (en) * 2013-07-15 2016-07-19 At&T Intellectual Property I, L.P. Method and apparatus for providing secure image encryption and decryption
US10382194B1 (en) 2014-01-10 2019-08-13 Rockwell Collins, Inc. Homomorphic encryption based high integrity computing system
US9203612B1 (en) 2014-06-02 2015-12-01 Atlanta DTH, Inc. Systems and methods for controlling media distribution
EP2981063B1 (en) 2014-07-31 2020-03-04 Samsung Electronics Co., Ltd Method of modifying image including photographing restricted element, and device for performing the method
WO2016064840A1 (en) * 2014-10-21 2016-04-28 Jedrzej Pietryka Systems and methods of communication signal processing for downhole applications
EP3272060B1 (en) * 2015-03-20 2019-05-01 Hewlett-Packard Enterprise Development LP Datastream block encryption
CN104992113A (zh) * 2015-05-29 2015-10-21 北京奇虎科技有限公司 检测网站隐私内容是否暴露的方法、装置和云监控系统
DE102015210576B4 (de) * 2015-06-09 2020-10-08 Eberhard Karls Universität Tübingen Verschlüsselungs-Pixelmatrix; Verfahren zu ihrer Erzeugung; Bilddatei, Videodatei und Videodatenstrom mit einer solchen Pixelmatrix, Verfahren zur Erzeugung einer Klarbildmatrix ausgehend von einer solchen Verschlüsselungs-Pixelmatrix sowie Dekodier-Einheit zur Durchführung dieses Verfahrens
GB201516880D0 (en) * 2015-09-23 2015-11-04 Pixelrights Ltd Secure distribution of an image
CN105681309B (zh) 2016-01-26 2018-06-19 腾讯科技(深圳)有限公司 一种信息处理方法、第一终端、第二终端及服务器
US9847974B2 (en) 2016-04-28 2017-12-19 Xerox Corporation Image document processing in a client-server system including privacy-preserving text recognition
US11516154B2 (en) 2017-07-13 2022-11-29 Apple Inc. Systems for managing messaging conversations
US10437580B2 (en) 2017-09-11 2019-10-08 Apple Inc. Software updating methods and systems
WO2019117880A1 (en) * 2017-12-12 2019-06-20 Google Llc Proactive detection of media item matching
JP7028005B2 (ja) * 2018-03-22 2022-03-02 富士フイルムビジネスイノベーション株式会社 情報処理装置、情報処理プログラム、閲覧装置、閲覧プログラム、及び情報処理システム
CN108924552B (zh) * 2018-08-07 2019-11-22 华中科技大学 基于同态加密的jpeg图像密文下解压缩方法及系统
CN112330521A (zh) * 2020-10-21 2021-02-05 南京航空航天大学 一种图像加密方法
CN112751981B (zh) * 2021-02-20 2022-09-23 新疆医科大学第一附属医院 一种切片数字化图像的批量传输加密方法
CN113094731B (zh) * 2021-04-15 2023-04-07 西南大学 基于互异分配再组合方案的区块链隐私保护方法
CN113038089B (zh) * 2021-05-21 2021-09-14 浙江宇视科技有限公司 智能识别的动态自解码处理方法、装置、电子设备及存储介质
CN113595715A (zh) * 2021-07-23 2021-11-02 华东交通大学 一种基于Logistic双像素矩形映射彩色图像加密及解密方法
CN114553499B (zh) * 2022-01-28 2024-02-13 中国银联股份有限公司 一种图像加密、图像处理方法、装置、设备及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030235325A1 (en) * 2002-06-24 2003-12-25 Eastman Kodak Company Method for securely transacting a transaction based on a transaction document
CN101010691A (zh) * 2004-06-14 2007-08-01 北卡罗莱纳大学格林斯伯勒分校 用于数字内容安全的系统和方法
US20080075290A1 (en) * 2006-09-26 2008-03-27 Fujitsu Limited Secure device having key management function and information processing apparatus
CN101682682A (zh) * 2007-05-30 2010-03-24 富士通株式会社 图像加密装置、图像解密装置、方法以及程序

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11234264A (ja) * 1998-02-17 1999-08-27 Canon Inc 電子透かし方式及びそれを用いた電子情報配布システム並びに記憶媒体
US7242772B1 (en) 2000-09-07 2007-07-10 Eastman Kodak Company Encryption apparatus and method for synchronizing multiple encryption keys with a data stream
JP2004140668A (ja) * 2002-10-18 2004-05-13 Canon Inc 情報処理方法
JP2006508602A (ja) * 2002-11-29 2006-03-09 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 画像暗号システムにおける鍵同期化
JP2004242287A (ja) 2003-01-14 2004-08-26 Canon Inc 情報処理方法及び装置、並びにコンピュータプログラム及びコンピュータ可読記憶媒体
DE102006055480A1 (de) * 2006-11-24 2008-05-29 Bayer Innovation Gmbh Codierverfahren, Decodierverfahren, Codec sowie Datenträger zur holographischen Speicherung
JP5206024B2 (ja) * 2008-02-28 2013-06-12 富士通株式会社 画像復号化装置、画像暗号化装置、画像復号化方法および画像復号化プログラム
KR20100018364A (ko) * 2008-08-06 2010-02-17 삼성전자주식회사 스캐닝 장치, 호스트 장치 및 스캔 이미지 처리방법
EP2311257B1 (en) * 2008-08-13 2016-01-06 GVBB Holdings S.A.R.L Apparatus and method for encrypting image data, and decrypting the encrypted image data, and image data distribution system
US8862900B2 (en) * 2010-01-08 2014-10-14 The Research Foundation For The State University Of New York Secure distributed storage system and method
JP5435142B2 (ja) * 2010-09-30 2014-03-05 富士通株式会社 画像暗号化システムおよび画像復号システム
US20130305383A1 (en) * 2010-12-22 2013-11-14 Intel Corporation System and method to protect user privacy in multimedia uploaded to internet sites

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030235325A1 (en) * 2002-06-24 2003-12-25 Eastman Kodak Company Method for securely transacting a transaction based on a transaction document
CN101010691A (zh) * 2004-06-14 2007-08-01 北卡罗莱纳大学格林斯伯勒分校 用于数字内容安全的系统和方法
US20080075290A1 (en) * 2006-09-26 2008-03-27 Fujitsu Limited Secure device having key management function and information processing apparatus
CN101682682A (zh) * 2007-05-30 2010-03-24 富士通株式会社 图像加密装置、图像解密装置、方法以及程序

Also Published As

Publication number Publication date
EP2791855A1 (en) 2014-10-22
CN104040934A (zh) 2014-09-10
US20130279690A1 (en) 2013-10-24
EP2791855B1 (en) 2019-01-23
WO2013089758A1 (en) 2013-06-20
US9276745B2 (en) 2016-03-01
EP2791855A4 (en) 2015-08-12

Similar Documents

Publication Publication Date Title
CN104040934B (zh) 当被云服务操控时保护图像隐私
Li et al. Reversible data hiding in encrypted images using cross division and additive homomorphism
Wright et al. Thumbnail-preserving encryption for JPEG
GNDU RC Dual layer security of data using LSB image steganography method and AES encryption algorithm
CN112040086B (zh) 一种图像加密、解密方法及装置、设备和可读存储介质
Li et al. Joint image compression and encryption based on order-8 alternating transforms
CN112035847B (zh) 一种图像加密、解密方法及装置、电子设备和存储介质
CN114390316A (zh) 一种图像采集同步加密隐私保护的处理方法和装置
Riasat et al. A hash-based approach for colour image steganography
CN114286131A (zh) 直播连麦中主播形象模型文件的传输方法及装置
Yuan et al. On the security of encrypted jpeg image with adaptive key generated by invariant characteristic
Islam et al. Denoising and error correction in noisy AES-encrypted images using statistical measures
Sazaki et al. Implementation of affine transform method and advanced hill cipher for securing digital images
CN113206926B (zh) 一种基于三像素点加密以平衡图像隐私性和可用性的方法
CN112508764B (zh) 一种基于信息嵌入的平衡图像隐私性和可用性的加密方法
CN114374773A (zh) 一种图像采集同步信息加密和使用端解密还原恢复的方法
Rao et al. A novel information security scheme using cryptic steganography
CN114339282A (zh) 直播互动中主播形象图片的传输方法及装置
Hu et al. Reversible secret image sharing with steganography and dynamic embedding
Jiang et al. Securing medical images for mobile health systems using a combined approach of encryption and steganography
QASSIM et al. Information Security with Image through Reversible Room by using Advanced Encryption Standard and Least Significant Bit Algorithm
Abed A new approach to encoding and hiding information in an image
Zhu et al. TPE-C: Thumbnail-preserving encryption based on chaotic system
CN117077165B (zh) 一种知识产权信息加密管理系统
Liu et al. Hiding media data via shaders: Enabling private sharing in the clouds

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180424

Termination date: 20191215