CN106663150A - 在公共云内安全地储存内容 - Google Patents

在公共云内安全地储存内容 Download PDF

Info

Publication number
CN106663150A
CN106663150A CN201580036119.7A CN201580036119A CN106663150A CN 106663150 A CN106663150 A CN 106663150A CN 201580036119 A CN201580036119 A CN 201580036119A CN 106663150 A CN106663150 A CN 106663150A
Authority
CN
China
Prior art keywords
processor
content
public
cek
cpuid
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.)
Granted
Application number
CN201580036119.7A
Other languages
English (en)
Other versions
CN106663150B (zh
Inventor
G·C·亨特
M·E·鲁斯诺维奇
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN106663150A publication Critical patent/CN106663150A/zh
Application granted granted Critical
Publication of CN106663150B publication Critical patent/CN106663150B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • 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
    • H04L63/0442Network 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 wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Storage Device Security (AREA)

Abstract

提供了用于在公共云内安全地储存和访问内容的系统、方法和计算机可读存储介质。处理器制造商向云提供商提供具有安全包围能力的处理器。提供商向可用于储存内容并具有安全包围能力的处理器提供处理器标识符(CPUID)的列表。内容所有者向制造商提供来自列表的所需处理器的CPUID,该制造商向内容所有者提供用于加密要储存在所标识的每个处理器上的内容的因处理器而异的公共代码加密密钥(CEK)。每个处理器被构造成使得用公共CEK加密的内容可仅在其安全包围内被解密。内容所有者用公共CEK来加密所需内容,并将经加密的内容以及合适的处理器的CPUID返回给云提供商。然后,云提供商在特定处理器上储存经加密的内容。

Description

在公共云内安全地储存内容
背景
对于采用公共云而言最大的障碍可能是对公司秘密和客户数据的安全性的忧虑。云提供商的声誉、其安全操作的跟踪记录以及第三方认证仍然要求内容所有者在储存和访问公共云中的敏感密码、加密密钥和数据时给予绝对信任。即使当前的硬件安全模块(HSM)产品也要求客户信任云软件提供商和运营商。
概述
提供本概述以便以简化的形式介绍以下在详细描述中进一步描述的一些概念。本概述并非旨在标识出要求保护的主题的关键特征或必要特征,亦非旨在用作辅助确定要求保护的主题的范围。
在各种实施例中,提供了用于在公共云内安全地储存和访问内容的系统、方法和计算机可读存储介质。处理器制造商向云提供商提供具有安全包围能力的处理器。云提供商为其具有安全包围能力并且可用于储存内容的处理器提供处理器标识符(CPUID)的列表。内容所有者访问列表并且将来自列表的一个或多个处理器的CPUID提供给处理器制造商。然后,处理器制造商为内容所有者提供针对由一个或多个CPUID所标识的每个特定处理器的因处理器而异的公共代码加密密钥(公共CEK)。处理器特定的公共CEK可被用来加密与对应的处理器相关联地储存的内容。每个特定处理器包括对应于所提供的公共CEK的处理器特定的私有代码加密密钥(私有CEK),并且通过设计被构造成使得用公共CEK加密的内容可仅在使用私有CEK的处理器的安全包围内被解密。内容所有者用公共CEK来加密所需内容,并向云提供商返回经加密的内容以及与被用来创建经加密的内容的因处理器而异的公共CEK相对应的特定处理器的CPUID。然后,云提供商储存与特定处理器相关联的经加密的内容。
本发明的实施例提供用于云中的内容所有者秘密存储和访问的公共云产品,其减少了对云软件提供商、云运营商和云管理员的信任的需要。
附图简述
本发明通过示例被例示出,且不限于附图,附图中相同的附图标记指示相似的元素,其中:
图1是适用于实现本发明的各实施例的示例性计算环境的框图;
图2是示出可以采用本发明各实施例的示例性计算系统的框图;
图3是示出根据本发明的实施例的用于在公共云内安全地储存和访问内容的示例性方法的流程图;
图4是示出根据本发明的实施例的从处理器制造商(例如,加利福尼亚州圣克拉拉的公司)的角度来看的用于在公共云内安全地储存和访问内容的示例性方法的流程图;
图5是示出根据本发明的实施例的从云提供商(例如,华盛顿州雷蒙德的微软公司)的角度来看的用于在公共云内安全地储存和访问内容的示例性方法的流程图;以及
图6是示出根据本发明的实施例的从内容所有者(例如,期望安全地储存并访问储存在公共云中的内容的任何一方)的角度来看的用于在公共云内安全地储存和访问内容的示例性方法的流程图。
详细描述
此处用细节来描述本发明的主题以满足法定要求。然而,描述本身并非旨在限制本专利的范围。相反,发明人已设想所要求保护的主题还可结合其它当前或未来技术以其它方式来实施,以包括不同的步骤或类似于本文中所描述的步骤的步骤组合。此外,尽管术语“步骤”和/或“框”可在此处用于指示所采用的方法的不同元素,但除非并且仅当明确描述了各个步骤的顺序时,术语不应被解释为暗示此处公开的各个步骤之中或之间的任何特定顺序。
本文所描述的技术的各个方面一般涉及用于在公共云内安全地储存和访问内容的系统、方法和计算机可读存储介质。处理器制造商(例如加利福尼亚州圣克拉拉的公司)提供具有到云提供商(例如到华盛顿州雷蒙德的微软公司)的安全包围能力的处理器。如本文所使用的术语“安全包围能力”是指在计算设备(例如处理器)的存储器内创建区域的能力,其中使用特殊保护和访问控制来保护信息资源。安全包围内的代码和数据受到保护,不受安全包围外的所有代码和数据的影响——即使在同一处理器上的代码和数据也是如此。仅作为示例,可与本发明的实施例一起使用的具有安全包围能力的一个处理器是由加利福尼亚州圣克拉拉的公司所提供的SGX(软件防护扩展)。本领域普通技术人员将理解,本文的实施例不限于与SGX一起使用,而是来自其他处理器制造商的其他硬件实现也可被使用。云提供商为其具有安全包围能力并且可用于储存内容的处理器提供处理器标识符(CPUID)的列表。内容所有者(即,期望在云内安全地储存和访问内容的任何一方)将来自列表的一个或多个处理器的CPUID提供给处理器制造商。然后,处理器制造商向内容所有者提供用于与一个或多个CPUID相关联的每个处理器的处理器特定的公共代码加密密钥(公共CEK),所述一个或多个CPUID可被用来加密与由所述一个或多个CPUID中的每一个所标识的特定处理器相关联地储存的内容。每个特定处理器包括对应于所提供的公共CEK的处理器特定的私有代码加密密钥(私有CEK),并且通过设计被构造成使得用公共CEK加密的内容可仅由私有CEK在处理器的安全包围内被解密。内容所有者用公共CEK来加密所需内容,并向云提供商返回经加密的内容以及与被用来创建经加密的内容的处理器特定的公共CEK相对应的特定处理器的CPUID。然后,云提供商储存与特定处理器相关联的经加密的内容。
因此,本发明的一个实施例涉及由包括至少一个处理器的一个或多个计算设备执行的方法,该方法用于在公共云内安全地储存和访问内容。该方法包括提供具有安全包围能力的一个或多个处理器,每个处理器具有与其相关联的CPUID;接收所述CPUID的集合,所述集合的每个CPUID与所述一个或多个处理器的一个处理器相关联并且已被选择用于储存内容;以及提供对应于由接收到的所述CPUID的集合所标识的每个处理器的处理器特定的公共CEK。
在另一个实施例中,本发明涉及由包括至少一个处理器的一个或多个计算设备执行的方法,该方法用于在公共云内安全地储存和访问内容。该方法包括接收CPUID的集合,所述集合的每个CPUID具有安全包围能力并且可用于储存内容。该方法还包括标识所述CPUID的集合至少一个子集,所述子集的每个CPUID与被选择用于储存内容的处理器相关联。更进一步地,该方法包括接收对应于与所述CPUID的子集相关联的每个处理器的因处理器而异的公共CEK,用接收到的与其对应的处理器特定的公共CEK来加密期望在被选择用于储存内容的每个处理器上储存的内容,以及提供经加密的内容以供储存连同与对应于被用来加密所提供的加密内容的所述因处理器而异的公共CEK的处理器相关联的CPUID。
在又一个实施例中,本发明涉及一种包括具有一个或多个处理器和一个或多个计算机可读存储介质的安全存储管理引擎以及与所述安全存储管理引擎耦合的数据存储的系统。安全存储管理引擎被配置成提供用于发布的CPUID的集合,所述CPUID集合的每个CPUID与具有安全包围能力并且可用于储存内容的处理器相关联。所述安全存储管理引擎还被配置成接收所述CPUID集合的子集以及用对应于由所述CPUID的子集所标识的所述处理器的因处理器而异的公共CEK加密的内容,并且将经加密的内容储存在由连同经加密的内容一起被接收的所述CPUID所标识的合适的处理器上。
在简要描述了本发明各实施方式的概览之后,以下描述其中可实现本发明的各实施方式的示例性操作环境,以便为本发明各方面提供通用上下文。参考附图、尤其是总体上和首先参考图1,示出了用于实现本发明的各实施例的示例性操作环境,并将其总体上指定为计算设备100。计算设备100只是合适的计算环境的一个示例,并且不旨在对本发明的各实施例的使用范围或功能提出任何限制。也不应将计算设备100解释为对所例示的任一组件或组件的任何组合有任何依赖性或要求。
本发明的实施例可在计算机代码或机器可使用指令的一般上下文中描述,所述计算机代码或机器可使用指令包括计算机可使用或计算机可执行指令,诸如由计算机或其他机器(诸如个人数据助理或其他手持设备)执行的程序模块。一般而言,程序模块包括例程、程序、对象、组件、数据结构等和/或指代执行特定任务或实现特定抽象数据类型的代码。本发明的实施例可以在各种系统配置中实施,这些系统配置包括但不限于手持式设备、消费电子产品、通用计算机、更专用计算设备等等。本发明的各实施例也可以在任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实施。
继续参考图1,计算设备100包括直接或间接耦合以下设备的总线110:存储器112、一个或多个处理器114、一个或多个呈现组件116、一个或多个输入/输出(I/O)端口118、一个或多个I/O组件120、和说明性电源122。总线110表示一个或多个总线可以为何物(诸如地址总线、数据总线或其组合)。虽然为了清楚起见用线条示出了图1的各个框,但实际上,这些框表示逻辑组件而不一定是实际组件。例如,可以将诸如显示设备等呈现组件认为是I/O组件。而且,处理器也具有存储器。发明人关于此点认识到这是本领域的特性,并重申,图1的图示只是可以结合本发明的一个或多个实施例来使用的示例性计算设备的例示。诸如“工作站”、“服务器”、“膝上型计算机”、“手持式设备”等分类之间没有区别,它们全部都被认为是在图1的范围之内的并且被称为“计算设备”。
计算设备100通常包括各种计算机可读介质。计算机可读介质可以是可由计算设备100访问的任何可用介质,而且包含易失性和非易失性介质、可移动和不可移动介质。计算机可读介质包括计算机存储介质和通信介质;计算机存储介质不包括信号本身。计算机存储介质包括以存储诸如计算机可读的指令、数据结构、程序模块或其他数据之类的信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或能用于存储所需信息且可以由计算设备100访问的任何其它介质。另一方面,通信介质以诸如载波或其他传输机制之类的已调制数据信号来体现计算机可读指令、数据结构、程序模块或其他数据,并且包括任何信息传送介质。术语“已调制数据信号”是指使得以在信号中编码信息的方式来设定或改变其一个或多个特征的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接之类的有线介质,以及诸如声学、RF、红外及其他无线介质之类的无线介质。上述的任意组合也应包含在计算机可读介质的范围内。
存储器112包括易失性和/或非易失性存储器形式的计算机存储介质。存储器可以是可移动的,不可移动的,或两者的组合。示例性硬件设备包括固态存储器、硬盘驱动器、光盘驱动器等等。计算设备100包括从诸如存储器112或I/O组件120之类的各种实体读取数据的一个或多个处理器。呈现组件116向用户或其他设备呈现数据指示。示例性呈现组件包括显示设备、扬声器、打印组件、振动组件等等。
I/O端口118允许计算设备100逻辑上耦合至包括I/O组件120的其它设备,其中某些可以是内置的。说明性I/O组件106包括话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪、打印机、无线设备、控制器(诸如触控笔、键盘和鼠标)、自然用户界面(NUI)等等。
NUI处理用户生成的空中手势、语音或其他生理输入。这些输入可被解释成出现在可用于响应于由计算设备100呈现的输入搜索请求等而检索的应用中的搜索请求、词或符号。这些请求可被传送给适当的网络元件以供未来处理。NUI实现语言识别、触摸和指示笔识别、面部识别、生物测定识别、平不上或屏幕附近的姿势识别、空中识别、头部和眼睛跟踪、以及与计算设备100的显示器相关联的触摸识别的任何组合。计算设备100可装备有深度相机,诸如立体相机系统、红外相机系统、RGB相机系统以及这些的组合以也能够与姿势检测和识别。此外,计算设备100可装备有允许检测运动的加速度计或陀螺仪。加速度计或陀螺仪的输出可被提供到计算设备100的显示器以渲染沉浸式增强现实或虚拟现实。
此处所描述的主题的各方面可在由移动设备执行的诸如程序模块等计算机可执行指令的一般上下文中描述。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等。本文所述的主题的各方面也可以在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实现。在分布式计算环境中,程序模块可以位于包括存储器存储设备的本地和远程计算机存储介质两者中。计算机可使用指令形成允许计算机根据输入源作出反应的界面。指令与其他代码段协作以响应于与接收到的数据的源结合接收的数据来发起各种任务。
此外,虽然此处使用术语“安全存储管理引擎”,但可以认识到,该术语也可涵盖服务器、web浏览器、分布在一个或多个计算机上的一个或多个进程的集合、一个或多个独立的存储设备、一个或多个其他计算或存储设备的集合、以上的一个或多个的任何组合,等等。
如前所述,本发明的实施例提供了用于在公共云内安全地储存和访问内容的系统、方法和计算机可读存储介质。为了真正安全,内容所有者的代码必须被加密,使得云提供商或云运营商在代码被启动进入安全包围之前不能篡改代码。在此被称为“代码加密密钥(CEK)”的加密密钥必须被储存在可信硬件中,其中云运营商不能取回加密密钥,然而CEK不能由云运营商生成,也不能由内容所有者以明文发送给云运营商,因为这两者都会引入对云运营商的信任依赖。此密钥供应引导问题由本发明的实施例通过利用由内容所有者和云运营商两者信任的第三方(例如,处理器制造商或与处理器制造商相关联的第三方)来解决。
存在针对供应引导的许多流。一个示例开始于处理器制造商在制造时为每个处理器植入私有CEK(处理器密钥对(PKP)),该私有CEK具有限于启动安全包围的用途。处理器制造商然后使得PKP的公共CEK可由内容所有者经由使用处理器的唯一CPUID作为索引的API来取回。云运营商使得其将内容所有者的安全包围托管在其上的处理器的CPUID对内容所有者可用,从而使得内容所有者能够使用PKP的公共CEK。在各实施例中,相互信任的第三方可被使用来供应新的加密PKP,消除处理器制造商的密钥供应过程中的持续信任。当内容所有者提交经加密的代码和数据时,该加密代码和数据不能被云运营商读取或篡改,并且该加密代码和数据将仅启动进入内容所有者预期的处理器上的安全包围。
参考图2,提供了例示出在其中可以采用本发明的各实施方式的示例性计算系统200的框图。通常,计算系统200例示了其中内容可被安全地加密以供在公共云内储存和访问以使得关于云提供商和/或运营商访问的忧虑可被减轻的环境。除了未示出的其他组件,计算系统200通常包括内容所有者计算设备210、安全存储管理引擎212(由云提供商操作)以及由处理器特定的公共代码加密密钥(公共CEK)提供商操作的计算设备214,它们都经由网络216彼此通信。网络216可以包括,但不仅限于,一个或多个局域网(LAN)和/或广域网(WAN)。此类联网环境在办公室、企业范围的计算机网络、内联网和因特网中是常见的。因此,此处不对网络216进行进一步的描述。
应当理解,在本发明的实施例的范围内,由处理器特定的公共CEK提供商操作的任何数量的内容所有者计算设备、安全存储管理引擎和/或计算设备可在计算系统200中被采用。其每个都可以包括单个设备/接口或在分布式环境中协作的多个设备/接口。例如,安全存储管理引擎212可包括安排在分布式环境中的多个设备和/或模块,所述多个设备和/或模块共同提供在此所述的安全存储管理引擎212的功能。另外,在计算系统200内还可以包括未示出的其他组件或模块。
在某些实施例中,所示的组件/模块中的一个或多个可以被实现为独立的应用。在其他实施例中,所示的组件/模块中的一个或多个可经由内容所有者计算设备210、安全存储管理引擎212、由处理器特定的公共CEK提供商操作的计算设备214或者作为基于因特网的服务来实现。本领域的普通技术人员可以理解,图2所示的组件/模块本质和数量上是示例性的,并且不应被解释为限制。可采用任何数量的组件/模块来实现此处的实施例的范围内的所需功能。此外,组件/模块可被定位在任何数量的内容所有者计算设备、安全存储管理引擎和/或由处理器特定的公共CEK提供商操作的设备上。仅作为示例,安全存储管理引擎212可以配备为单个计算设备(如所示那样)、计算设备群集,或远离一个或多个其余组件的计算设备。
应当理解,此处所描述的这一和其他安排仅作为示例来阐明。附加于或替代于所示和/或所述的安排和元素,可使用其他安排和元素(例如机器、接口、功能、次序、以及功能聚集等),并且可完全省略某些元素。此外,本文所描述的许多元素是可以实现为分立或分布式组件或结合其他组件的、以及以任何合适的组合和在任何合适的位置的功能实体。此处被描述为由一个或多个实体执行的各种功能可由硬件、固件和/或软件来执行。例如,各种功能可由执行储存在存储器中的指令的处理器来执行。
内容所有者计算设备210可包括任何类型的计算设备,诸如例如参考图1描述的计算设备100。应当注意,本发明的实施例同样适用于接受手势、触摸和/或语音输入的移动计算设备和设备。任何及所有如此的变型、及其任何组合都被构想落在本发明的各实施例的范围内。内容所有者计算设备210被尤其配置成允许内容所有者接收可用于储存内容并具有安全包围能力的处理器的标识符,接收用于加密高价值内容(例如,SSL证书、数据加密密钥、帐户密码以及敏感业务和客户数据)或内容所有者期望保护的任何其他内容的公共CEK,使用处理器特定的公共CEK来加密内容,以及提供用于在公共云内储存和访问的经加密的内容。就此,内容所有者计算设备210通常包括处理器标识接收组件220、处理器标识组件222、因处理器而异的公共CEK接收组件224、加密组件226和加密内容提供组件228。
处理器标识接收组件220被配置成例如从云提供商接收对应于具有安全包围能力并且可用于储存内容的处理器的CPUID集合。如下面更全面地描述的,该CPUID集合可由云提供商发布或者可以以其他方式由云提供商使其可用于由内容所有者进行发布和访问。处理器标识组件222被配置成向由公共CEK提供商操作的计算设备214提供CPUID的子集。如下面更详细地描述的,由公共CEK提供商操作的计算设备214可由对应于CPUID的子集的处理器的制造商来操作,或者可以是与对应于CPUID的子集的处理器的制造商相关联的第三方。任何及所有如此的变型、及其任何组合都被构想落在本发明的各实施例的范围内。该子集包括与由内容所有者选择的用于储存和访问内容的处理器相对应的CPUID。
公共CEK接收组件224被配置成从由公共CEK提供商操作的计算设备214接收由CPUID的子集所标识的对每个处理器专用的公共CEK。加密组件226被配置成用对特定处理器专用的公共CEK来加密由CPUID的子集所标识的该特定处理器内期望被储存和访问的内容。例如,如果内容所有者期望加密两个信息分组,第一个信息分组在CPUID A内被储存和访问,第二个信息分组在CPUID B内被储存和访问,加密组件226被配置成用对由CPUID A所标识的处理器专用的公共CEK来加密第一分组,并且用对由CPUID B所标识的处理器专用的公共CEK来加密第二分组。
加密内容提供组件228被配置成向云提供商提供用合适的因处理器而异的公共CEK加密的内容以及与被用来加密每个内容分组的公共CEK相对应的处理器的CPUID。然后,如下面更全面地描述的,云提供商可将经加密的内容储存在云内的合适的安全处理器上。
图2的计算设备200的安全存储管理引擎212可包括任何类型的计算设备,诸如参考图1所描述的计算设备100,并且安全存储管理引擎212例如尤其被配置成提供可用于储存内容的安全处理器的处理器标识符,以及接收和储存与合适的安全处理器相关联的经加密的内容。如所例示的,安全存储管理引擎212可访问数据存储218。数据存储218被配置成储存至少与安全处理器标识符和在其安全处理器内存储的空间可用性相关的信息。在各实施例中,数据存储218被配置成搜索与其相关联地储存的一个或多个项目。本领域普通技术人员将理解和明白,与该数据存储相关联地储存的信息可以是可配置的且可包括仅作为示例与安全处理器、处理器可用性等相关的任何信息。这一信息的内容和量决不旨在限制本发明的各实施例的范围。此外,数据存储218可以是单个独立组件(如图所示)或多个存储设备(例如数据库集群),其部分可与安全存储管理引擎212、另一外部计算设备(未示出)和/或其任何组合相关联地驻留。
如所例示的,图2的计算系统200的安全存储管理引擎212包括发布组件230、接收组件232、存储组件234和指令组件236。发布组件230被配置成发布CPUID的集合(或提供CPUID的集合以供第三方发布),每个CPUID与具有安全包围能力并且可用于储存内容的处理器相关联。如在此更全面地描述的,一旦发布,CPUID的集合就可由期望以在公共云内安全地储存和访问内容的内容所有者来访问。
接收组件232被配置成例如从内容所有者接收用合适的因处理器而异的公共CEK加密的内容。接收组件232还被配置成接收与被期望用于储存加密内容的处理器相关联的CPUID,即与对应于被用来加密经加密的内容的因处理器而异的公共CEK的处理器相关联的CPUID。
存储组件234被配置成将接收到的经加密的内容储存在由接收到的CPUID所标识的合适的处理器上。指令组件236被配置成指示合适的处理器对安全包围中的经加密的内容进行解密。
继续参照图2,由处理器特定的公共CEK提供商操作的计算设备214可包括任何类型的计算设备,例如参考图1所描述的计算设备100。在各实施例中,处理器特定的公共CEK提供商可以是与所需的处理器特定的公共CEK相关联的处理器的制造商。在其他实施例中,处理器特定的公共CEK提供商可以是与处理器的制造商相关联的第三方,所述处理器的制造商与所需的处理器特定的公共CEK相关联。后者提供了额外的安全级别并且还可减轻对数据泄漏的忧虑。任何及所有如此的变型、及其任何组合都被构想落在本发明的各实施例的范围内。
由因处理器而异的公共CEK提供商操作的计算设备214尤其被配置成接收与期望进行安全内容储存的处理器相对应的CPUID,并且提供对应于与接收到的CPUID相关联的处理器的因处理器而异的公共CEK。就此,由因处理器而异的公共CEK提供商操作的计算设备214包括处理器标识符接收组件238和公共CEK提供组件240。处理器标识符接收组件238被配置成接收CPUID的列表(例如,来自内容所有者),每个CPUID与内容所有者期望在其上储存内容的安全处理器相关联。公共CEK提供组件240被配置成提供因处理器而异的公共CEK,该(多个)公共密钥用于加密与合适的处理器相关联地储存的内容,其中至少一个公共密钥专用于与从内容所有者接收的每个CPUID相关联的处理器。
安全包围不仅使得内容所有者能够安全地储存和访问秘密,还安全地执行利用秘密的代码,使代码保密。因为安全包围对来自处理器上执行的任何其他东西(包括其他安全包围)的访问是安全的,所以云提供商可选择将不同的内容所有者安全包围安全地布置在同一服务器上。能够在处理器之间透明地迁移安全包围不仅仅是希望解决硬件故障和停用,而且在面对计划的软件和硬件维护时还希望进行负载平衡并提供高可用性。用单个处理器的密钥来加密将在安全包围中执行的代码可干扰迁移的能力。
云运营商启用迁移的一种可扩展方式是为可潜在地托管内容所有者的安全包围的处理器列队来发布CPUID。内容所有者可在云外生成对称的CEK,并使用该CEK加密其代码和数据包。然后,内容所有者可创建一个阵列,其条目包括CPUID和用该处理器的PKP公共密钥加密的CEK。当内容所有者启动安全包围时,在处理器上运行的云提供商的软件使用CPUID找到合适的条目,并指示处理器首先安全地解密CEK,然后使用它来将代码和数据解密到安全包围中。迁移用不同的阵列条目简单地重复该过程。
该方案服务于处理器队列相对静态的情况,但是当云运营商引入可托管安全包围的新处理器时,该方案仍然要求内容所有者创建新的阵列条目。然而,使用安全包围,该方案可被扩展使得内容所有者的代码将自动地为新处理器产生包。为了支持这种能力,内容所有者的代码包括可由云提供商用可能托管内容所有者的代码的新处理器的CPUID来调用的接口。作为响应,该代码安全地连接到处理器制造商(或在处理器中已提供密钥的相互信任的第三方)的API以取回用于对应的处理器的PKP公共密钥。内容所有者上传到云提供商的经加密的代码包包括其自己的CEK(在云提供商自己内加密),因此当经加密的代码包启动进入安全包围时,代码可对其自己的CEK进行安全访问。这使得能够用附加的服务器的PKP公共密钥来按需加密CEK,并将经加密的代码密钥返回给云运营商,使得它们可扩充代码的加密CEK阵列。
现在转到图3,例示了示出用于在公共云内安全地储存和访问内容的示例性方法300的流程图。如在框310处所指示的,一个或多个处理器通过处理器制造商(例如,加利福尼亚州圣克拉拉的公司)被提供给云提供商,例如华盛顿雷蒙德的微软公司。每个所提供的处理器包括安全包围能力并且包括与其相关联的CPUID。如在框312处所指示的,云提供商发布CPUID的集合或者使CPUID的集合可用于发布,每个CPUID与由处理器制造商所提供的处理器之一相关联。因此,与CPUID集合中的CPUID相关联的每个处理器包括安全包围能力。与CPUID集合中的CPUID相关联的每个处理器还可用于安全地储存内容。如在框314处所指示的,内容所有者(即,任何期望在公共云内安全地储存和访问内容的人)从云提供商(或相关联的发布者)接收CPUID集合。
如在框316处所指示的,CPUID的子集由内容所有者标识成与内容所有者期望在其上安全地储存内容的处理器相关联,并且CPUID的子集被提供给因处理器而异的公共CEK提供商。在各实施例中,因处理器而异的公共CEK提供商可以是与所提供的因处理器而异的公共CEK相关联的处理器的制造商。在其他实施例中,因处理器而异的公共CEK提供商可以是与处理器制造商相关联的第三方。任何及所有如此的变型、及其任何组合都被构想落在本发明的各实施例的范围内。如在框318处所指示的,通过因处理器而异的公共CEK提供商从内容所有者接收CPUID的子集。
因处理器而异的公共CEK提供商向内容所有者提供与由CPUID的子集所标识的每个处理器相对应的因处理器而异的公共CEK。这在框320处指示。如在框322处所指示的,因处理器而异的公共CEK由内容所有者接收。内容所有者使用接收到的因处理器而异的公共CEK来加密其期望与由CPUID的子集所标识的安全处理器相关联地安全地存储的内容(代码和数据)。用于由CPUID的子集的CPUID所标识的每个处理器的内容用对该处理器专用的公共密钥来加密。这在框324处指示。如在框326处所指示的,经加密的内容连同与被用来加密内容的因处理器而异的公共CEK相关联的处理器的合适的CPUID一起被提供给云提供商。
如在框328处所指示的,云提供商从内容所有者接收用合适的因处理器而异的公共CEK加密的内容以及用于存储该内容所期望的处理器的CPUID如在框330处所指示的,云提供商将经加密的内容储存在由从内容所有者接收的CPUID所标识的合适的处理器上。在实施例中,如在框332处所指示的,云提供商还可指示合适的处理器来解密安全包围中的内容。
现在参考图4,例示了示出根据本发明的实施例的用于在公共云内安全地储存和访问内容的另一示例性方法400的流程图,该流程图从处理器制造商的角度来看。如在框410处所指示的,具有安全包围能力的一个或多个处理器被提供给云提供商(例如,华盛顿州雷蒙德的微软公司)。每个处理器具有与其相关联的CPUID。如在框412处所指示的,CPUID的集合(例如,从内容所有者)被接收,集合中的每个CPUID与内容所有者为安全地储存和访问内容所选择的处理器相关联。如在框414处所指示的,内容所有者被提供与由接收到的CPUID的集合所标识的每个处理器相对应的因处理器而异的公共CEK。
转向图5,例示了示出根据本发明的实施例的用于在云中安全地储存内容的另一示例性方法500的流程图,该流程图从云提供商的角度来看。如在框510处所指示的,CPUID的集合被发布(或被使得可用于发布),CPUID集合中的每个CPUID与具有安全包围能力并且可用于在公共云中安全地储存和访问内容的处理器相关联。已发布的CPUID的集合的子集连同用与由该子集的CPUID所标识的处理器相对应的因处理器而异的公共CEK加密的内容一起(例如,从内容所有者)被接收。这在框512处指示。如在框514处所指示的,经加密的内容被储存在由接收到的CPUID所标识的合适的处理器上。在实施例中,如在框516处所指示的,合适的处理器被指示来解密安全包围中的内容。
参考图6,例示了示出根据本发明的实施例的用于在公共云内安全地储存和访问内容的示例性方法600的流程图,该流程图从内容所有者的角度来看。如在框610处所指示的,从云提供商接收具有安全包围能力并且可用于在公共云中安全地储存和访问内容的处理器的CPUID的集合。如在框612处所指示的,CPUID的集合的至少一个子集被标识并被提供给处理器制造商(或与处理器制造商相关联的第三方),该子集的每个处理器标识符与被选择用于在公共云中储存和访问内容的处理器相关联。如在框614处所指示的,从处理器制造商(或第三方)接收因处理器而异的公共CEK,该因处理器而异的公共CEK对应于与CPUID的子集相关联的处理器。如在框616处所指示的,用对应于该处理器的因处理器而异的公共CEK来加密期望在被选择用于安全地储存和访问内容的每个处理器上储存的内容(代码和数据)。经加密的内容连同与对应于用于加密经加密的内容的因处理器而异的公共CEK的处理器相关联的CPUID一起被提供给云提供商用于在合适的处理器上储存。这在框618处指示。
可以理解,本发明的实施例提供了用于在公共云内安全地储存和访问内容的系统、方法和计算机可读存储介质。处理器制造商向云提供商提供具有安全包围能力的处理器。云提供商为其具有安全包围能力并且可用于在公共云内安全地储存和访问内容的处理器提供CPUID的列表。内容所有者访问列表并且将来自列表的一个或多个处理器的CPUID提供给处理器制造商。然后,处理器制造商向内容所有者提供因处理器而异的公共CEK,该因处理器而异的公共CEK可被用来加密与由一个或多个CPUID所标识的每个特定处理器相关联地储存的内容。每个特定处理器包括与所提供的公共CEK相对应的私有CEK,并且通过设计被构造成使得用公共CEK加密的内容可仅在处理器的安全包围内被解密。内容所有者利用公共CEK来加密所需内容,并向云提供商返回加密的内容以及与被用来创建加密的内容的公共CEK相对应的特定处理器的CPUID。然后,云提供商存储与特定处理器相关联的加密的内容。
参考各特定实施例描述了本发明,各特定实施例在所有方面都旨在是说明性的而非限制性的。不偏离本发明范围的情况下,各替换实施例对于本发明所属领域的技术人员将变得显而易见。
尽管本发明易于作出各种修改和替换构造,但其某些说明性实施例在附图中示出并在上面被详细地描述。然而应当了解,这不旨在将本发明限于所公开的具体形式,而是相反地,旨在覆盖落入本发明的精神和范围之内的所有修改、替换构造和等效方案。
本领域的普通技术人员将会理解,图3的方法300、图4的方法400、图5的方法500和图6的方法600所示的步骤的次序并非旨在以任何方式限制本发明的范围,而实际上,这些步骤在本发明的各实施例中可以按各种不同的顺序发生。任何及所有如此的变型、及其任何组合都被构想落在本发明的各实施例的范围内。

Claims (4)

1.一种由包括至少一个处理器的一个或多个计算设备执行的方法,所述方法用于在云中安全地储存内容,所述方法包括:
提供具有安全包围能力的一个或多个处理器,每个处理器具有与其相关联的处理器标识符;
接收处理器标识符的集合,所述集合中的每个处理器标识符与所述一个或多个处理器中的一个处理器相关联并且已被选择用于储存内容;以及
提供对应于由接收到的所述处理器标识符的集合所标识的每个处理器的因处理器而异的公共密钥。
2.一种由包括至少一个处理器的一个或多个计算设备执行的方法,所述方法用于在云中安全地储存内容,所述方法包括:
接收处理器标识符的集合,所述集合中的每个处理器标识符具有安全包围能力并且可用于储存内容;
标识所述处理器标识符的集合的至少一个子集,所述子集中的每个处理器标识符与被选择用于储存内容的处理器相关联;
接收对应于与所述处理器标识符的子集相关联的每个处理器的因处理器而异的公共密钥;
用接收到的与其相对应的因处理器而异的公开密钥来加密期望在被选择用于储存内容的每个处理器上储存的内容;以及
提供以供储存的经加密的内容以及与对应于被用来加密所提供的加密内容的所述因处理器而异的公共密钥的处理器相关联的处理器标识符。
3.一种系统,包括:
具有一个或多个处理器和一个或多个计算机可读存储介质的安全存储管理引擎;以及
与所述安全存储管理引擎耦合的数据存储,
其中所述安全存储管理引擎:
提供用于发布的处理器标识符的集合,所述处理器标识符的集合中的每个处理器标识符与具有安全包围能力并且可用于储存内容的处理器相关联;
接收所述处理器标识符的集合的子集以及用与由所述处理器标识符的子集所标识的处理器相对应的因处理器而异的公共密钥加密的内容;并且
将经加密的内容储存在由连同经加密的内容一起被接收的所述处理器标识符所标识的合适的处理器上。
4.如权利要求3所述的系统,其特征在于,所述安全存储管理引擎进一步指示所述合适的处理器在安全包围中解密经加密的内容。
CN201580036119.7A 2014-06-30 2015-06-29 用于在公共云内安全地储存内容的方法和系统 Active CN106663150B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/319,969 2014-06-30
US14/319,969 US9922200B2 (en) 2014-06-30 2014-06-30 Securely storing content within public clouds
PCT/US2015/038204 WO2016003833A1 (en) 2014-06-30 2015-06-29 Securely storing content within public clouds

Publications (2)

Publication Number Publication Date
CN106663150A true CN106663150A (zh) 2017-05-10
CN106663150B CN106663150B (zh) 2020-10-23

Family

ID=53539958

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580036119.7A Active CN106663150B (zh) 2014-06-30 2015-06-29 用于在公共云内安全地储存内容的方法和系统

Country Status (4)

Country Link
US (2) US9922200B2 (zh)
EP (2) EP3606003B1 (zh)
CN (1) CN106663150B (zh)
WO (1) WO2016003833A1 (zh)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9922200B2 (en) * 2014-06-30 2018-03-20 Microsoft Technology Licensing, Llc Securely storing content within public clouds
US9767324B2 (en) * 2014-11-22 2017-09-19 Intel Corporation Transparent execution of secret content
FR3035241B1 (fr) * 2015-04-16 2017-12-22 Inside Secure Procede de partage d'une memoire entre au moins deux entites fonctionnelles
US9798641B2 (en) * 2015-12-22 2017-10-24 Intel Corporation Method to increase cloud availability and silicon isolation using secure enclaves
US11165565B2 (en) * 2016-12-09 2021-11-02 Microsoft Technology Licensing, Llc Secure distribution private keys for use by untrusted code
US10721057B2 (en) 2017-01-20 2020-07-21 Enveil, Inc. Dynamic channels in secure queries and analytics
US11507683B2 (en) 2017-01-20 2022-11-22 Enveil, Inc. Query processing with adaptive risk decisioning
US10873568B2 (en) 2017-01-20 2020-12-22 Enveil, Inc. Secure analytics using homomorphic and injective format-preserving encryption and an encrypted analytics matrix
US11196541B2 (en) 2017-01-20 2021-12-07 Enveil, Inc. Secure machine learning analytics using homomorphic encryption
US11777729B2 (en) 2017-01-20 2023-10-03 Enveil, Inc. Secure analytics using term generation and homomorphic encryption
US10790960B2 (en) 2017-01-20 2020-09-29 Enveil, Inc. Secure probabilistic analytics using an encrypted analytics matrix
US11120140B2 (en) * 2018-06-27 2021-09-14 International Business Machines Corporation Secure operations on encrypted data
US10891391B2 (en) 2018-08-29 2021-01-12 International Business Machines Corporation Remote file storage with multiple access levels
US10902133B2 (en) 2018-10-25 2021-01-26 Enveil, Inc. Computational operations in enclave computing environments
US10817262B2 (en) 2018-11-08 2020-10-27 Enveil, Inc. Reduced and pipelined hardware architecture for Montgomery Modular Multiplication
US10901918B2 (en) * 2018-11-29 2021-01-26 International Business Machines Corporation Constructing flexibly-secure systems in a disaggregated environment
US11017103B2 (en) * 2018-11-29 2021-05-25 International Business Machines Corporation Securely transferring computation in a disaggregated environment using a processor group key
US11765225B2 (en) * 2019-03-18 2023-09-19 Reliance Jio Infocomm Limited Systems and methods for microservice execution load balancing in virtual distributed ledger networks
US11663347B2 (en) 2019-04-26 2023-05-30 Jpmorgan Chase Bank, N.A. Systems and methods for maintaining immutable data access logs with privacy
US11019033B1 (en) 2019-12-27 2021-05-25 EMC IP Holding Company LLC Trust domain secure enclaves in cloud infrastructure
US11601258B2 (en) 2020-10-08 2023-03-07 Enveil, Inc. Selector derived encryption systems and methods

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102609643A (zh) * 2012-01-10 2012-07-25 道里云信息技术(北京)有限公司 一种对虚拟机作动态密码学保护与所需的密钥管理方法
US20120266167A1 (en) * 2011-04-18 2012-10-18 Bank Of America Corporation Tenant Data Center for Establishing a Virtual Machine in a Cloud Environment
CN103107995A (zh) * 2013-02-06 2013-05-15 中电长城网际系统应用有限公司 一种云计算环境数据安全存储系统和方法
CN103248479A (zh) * 2012-02-06 2013-08-14 中兴通讯股份有限公司 云存储安全系统、数据保护以及共享方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1947799A4 (en) * 2005-11-08 2014-03-19 Sony Computer Entertainment Inc DATA COMMUNICATION METHOD, COMPUTER AND INFORMATION STORAGE MEDIUM
US8705746B2 (en) * 2006-09-29 2014-04-22 Microsoft Corporation Data security in an off-premise environment
US8505078B2 (en) * 2008-12-28 2013-08-06 Qualcomm Incorporated Apparatus and methods for providing authorized device access
US8892746B2 (en) * 2009-12-30 2014-11-18 International Business Machines Corporation Asynchronous invocation mechanism in session initiation protocol (SIP) server clusters
DE102010028133A1 (de) * 2010-04-22 2011-10-27 Bundesdruckerei Gmbh Verfahren zum Lesen eines Attributs aus einem ID-Token
US20120084562A1 (en) 2010-10-04 2012-04-05 Ralph Rabert Farina Methods and systems for updating a secure boot device using cryptographically secured communications across unsecured networks
US8972746B2 (en) 2010-12-17 2015-03-03 Intel Corporation Technique for supporting multiple secure enclaves
US8832452B2 (en) 2010-12-22 2014-09-09 Intel Corporation System and method for implementing a trusted dynamic launch and trusted platform module (TPM) using secure enclaves
US9413538B2 (en) 2011-12-12 2016-08-09 Microsoft Technology Licensing, Llc Cryptographic certification of secure hosted execution environments
US9389933B2 (en) 2011-12-12 2016-07-12 Microsoft Technology Licensing, Llc Facilitating system service request interactions for hardware-protected applications
KR101874081B1 (ko) 2012-06-07 2018-07-03 에스케이테크엑스 주식회사 개선된 보안 기능 기반의 클라우드 서비스 시스템 및 이를 지원하는 방법
US9465947B2 (en) * 2013-08-05 2016-10-11 Samsung Sds America, Inc. System and method for encryption and key management in cloud storage
CN105408913B (zh) * 2013-08-21 2019-03-15 英特尔公司 在云中隐私地处理数据
US9825925B2 (en) * 2014-06-11 2017-11-21 Bijit Hore Method and apparatus for securing sensitive data in a cloud storage system
US9922200B2 (en) * 2014-06-30 2018-03-20 Microsoft Technology Licensing, Llc Securely storing content within public clouds

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120266167A1 (en) * 2011-04-18 2012-10-18 Bank Of America Corporation Tenant Data Center for Establishing a Virtual Machine in a Cloud Environment
CN102609643A (zh) * 2012-01-10 2012-07-25 道里云信息技术(北京)有限公司 一种对虚拟机作动态密码学保护与所需的密钥管理方法
CN103248479A (zh) * 2012-02-06 2013-08-14 中兴通讯股份有限公司 云存储安全系统、数据保护以及共享方法
CN103107995A (zh) * 2013-02-06 2013-05-15 中电长城网际系统应用有限公司 一种云计算环境数据安全存储系统和方法

Also Published As

Publication number Publication date
WO2016003833A1 (en) 2016-01-07
EP3606003A1 (en) 2020-02-05
EP3162021B1 (en) 2019-10-23
US20150379297A1 (en) 2015-12-31
US10831913B2 (en) 2020-11-10
EP3162021A1 (en) 2017-05-03
EP3606003B1 (en) 2022-04-13
US20190087597A1 (en) 2019-03-21
CN106663150B (zh) 2020-10-23
US9922200B2 (en) 2018-03-20

Similar Documents

Publication Publication Date Title
CN106663150A (zh) 在公共云内安全地储存内容
US10042988B2 (en) Tiered code obfuscation in a development environment
US8352751B2 (en) Encryption program operation management system and program
US10846243B2 (en) Access management method, information processing device, program, and recording medium
US20170277898A1 (en) Key management for secure memory address spaces
US10212153B2 (en) Providing data security with a token device
CN107113286A (zh) 跨设备的漫游内容擦除操作
CN102971722A (zh) 用于创建和传送加密的虚拟盘的系统和方法
JP2011048661A (ja) 仮想サーバ暗号化システム
US20150381487A1 (en) Cloud-based anonymous routing
US20200162238A1 (en) User access control in blockchain
US20160330022A1 (en) Cryptographic system, key generation apparatus, re-encryption apparatus and user terminal
JP7445358B2 (ja) セキュア・インタフェース・コントロールのためのセキュア実行ゲスト所有者コントロール
JP2013529804A (ja) 安全なオーダー・マネジメント・システムのデータ暗号化、復号化、およびセグメント化の方法およびシステム
US9755832B2 (en) Password-authenticated public key encryption and decryption
JP2014078770A (ja) アクセス権付き暗号化装置、アクセス権付き暗号システム、アクセス権付き暗号化方法およびアクセス権付き暗号化プログラム
JP2021530009A (ja) 暗号化されたデータに対するセキュアな動作
KR20240038774A (ko) 보안 가상 머신들의 진단 상태 저장
US12008363B1 (en) Delivering portions of source code based on a stacked-layer framework
US11995197B2 (en) Sensitive data encryption
Gupta et al. Data Security Threats Arising Between a Cloud and Its Users
KR20140137076A (ko) 서버의 패스워드 관리장치 및 이에 적용되는 패스워드 관리방법
Haunts et al. Azure Key Vault Usage Patterns
CN114840862A (zh) 计算设备、物理输入设备、物理输出设备及数据传输方法
JP2012084950A (ja) サーバへのアクセス方法及びアクセスプログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant