Difference between revisions of "Next-Generation Secure Computing Base"

From BetaArchive Wiki
Jump to navigation Jump to search
m (spacing, general fixes)
(Replaced content with " {{PAGENAME}} IS VANDALIZED")
(Tag: Replaced)
Line 1: Line 1:
[[File:NGSCBWHEC03.png|right|thumb|Diagram of the NGSCB software architecture as presented during WinHEC 2003.]]
The '''Next-Generation Secure Computing Base''' (codenamed ''Palladium'')<ref name="'What's in a name? Not Palladium.">Lemos, Robert. (January 24, 2003). [http://news.cnet.com/2100-1001-982127.html "What's in a name? Not Palladium"]</ref> is a software architecture originally slated to be included in the [[Microsoft]] [[Windows Longhorn|Windows "Longhorn"]] operating system. Development of the architecture began in 1997.<ref name="Dangers of TCPA/Palladium.">Biddle, Peter. (August 5, 2002). [http://www.cl.cam.ac.uk/~rja14/biddle.txt "Re: Dangers of TCPA/Palladium"]</ref><ref>Merritt, Rick. (July 15, 2002). [http://www.eetimes.com/document.asp?doc_id=1144938 "Microsoft scheme for PC security faces flak"]</ref>
The NGSCB was the result of years of research within Microsoft to create a secure computing solution that equaled the security of more closed systems while preserving the openness and flexibility of the Windows platform.<ref name="''Palladium'.">Aday, Michael. [http://epic.org/privacy/consumer/microsoft/nistpalladium.pdf "Palladium"]</ref> The NGSCB relied on new software components and specially designed hardware to create a new execution environment where more sensitive operations could be performed securely.<ref name="'Palladium' summary.">Schoen, Seth. (July 5, 2002). [https://web.archive.org/web/20020802145913/http://vitanuova.loyalty.org/2002-07-05.html "'Palladium' summary"]</ref> Microsoft's primary stated objective with the NGSCB was to "protect software from software."<ref name="''Palladium'."/><ref>Lee, Timothy. (November 30, 2012). [http://arstechnica.com/tech-policy/2012/11/how-four-microsoft-engineers-proved-copy-protection-would-fail/?comments=1&post=23549237#comment-23549237 "How 4 Microsoft engineers proved that the 'darknet' would defeat DRM"]</ref>
The idea of creating an architecture where software components can be loaded in a known and protected state predates the development of NGSCB.<ref name="DRM-OS.">Google Patents. [http://www.google.com/patents/US6330670 Digital rights management operating system (U.S. Patent 6330670 B1)]</ref> A number of attempts were made in the 1960s and 1970s to produce secure computing systems,<ref>Google Patents. [http://www.google.com/patents/US6185678 Secure and reliable bootstrap architecture (U.S. Patent 6185678)]</ref><ref>Anderson, James. (October 1972). [http://seclab.cs.ucdavis.edu/projects/history/papers/ande72.pdf "Computer Security Technology Planning Study"]</ref> with variations of the idea emerging in more recent decades.<ref>Google Patents. [http://www.google.com/patents/US5421006 Method and apparatus for assessing integrity of computer system software (U.S. Patent 5421006)]</ref><ref>Kuhn, Markus. (April 30, 1997). [http://www.cl.cam.ac.uk/~mgk25/trustno1.pdf "The TrustNo 1 Cryptoprocessor Concept"]</ref>
In 1999 the Trusted Computing Platform Alliance, a consortium of various technology companies, was formed in an effort to promote trust in the PC platform.<ref>Trusted Computing Platform Alliance. [https://web.archive.org/web/20020802135319/http://www.trustedcomputing.org/tcpaasp4/index.asp "Home Page"]</ref> The TCPA would release several detailed specifications for a trusted computing platform with focus on features such as code validation and encryption based on integrity measurements, hardware based key storage, and attestation to remote entities. These features required a new hardware component designed by the TCPA called the ''Trusted Platform Module'' (referred to as a ''Security Support Component'',<ref name="NGSCB Technical FAQ.">Microsoft. [http://technet.microsoft.com/en-us/library/cc723472.aspx"Microsoft Next-Generation Secure Computing Base - Technical FAQ"]</ref> ''Secure Cryptographic Processor'',<ref name="''Palladium'."/> or ''Security Support Processor''<ref name="''Palladium'."/> in earlier Microsoft documentation). While most of these features would later serve as the foundation for Microsoft's NGSCB architecture, they were different in terms of implementation.<ref name="Dangers of TCPA/Palladium."/> The TCPA was superseded by the Trusted Computing Group in 2003.<ref>Trusted Computing Group. [http://www.trustedcomputinggroup.org/files/resource_files/B8FF1287-1A4B-B294-D0423684DEB619FD/TCG%20Timeline_rev%20Feb%202011.pdf "TCG Timeline"]</ref>
Development of the NGSCB began in 1997 after Microsoft developer Peter Biddle conceived of new ways to protect content on personal computers.<ref name="'Palladium' summary."/>
Microsoft later filed a number of patents related to elements of the NGSCB design.<ref>Lampson, Butler. [http://research.microsoft.com/en-us/um/people/blampson/cv.doc "Curriculum Vitae"]</ref> Patents for a digital rights management operating system,<ref name="DRM-OS."/> loading and identifying a digital rights management operating system,<ref>Google Patents. [http://www.google.com/patents/US6327652 Loading and identifying a digital rights management operating system (U.S. Patent 6327652 B1)]</ref> key-based secure storage,<ref>Google Patents. [http://www.google.com/patents/US7194092 Key-based secure storage (U.S. Patent 7194092 B1)]</ref> and certificate based access control<ref>Google Patents. [http://www.google.com/patents/US6820063 Controlling access to content based on certificates and access predicates (U.S. Patent 6820063 B1)]</ref> were filed on January 8, 1999. A method to authenticate an operating system based on its central processing unit was filed on March 10, 1999.<ref>Google Patents. [http://www.google.com/patents/US7174457 System and method for authenticating an operating system to a central processing unit (U.S. Patent 7174457 B1)]</ref> Patents related to the secure execution of code<ref>Google Patents. [http://www.google.com/patents/US6651171 Secure execution of program code (U.S. Patent 6651171 B1)]</ref> and protection of code in memory<ref>Google Patents. [http://www.google.com/patents/US6775779 Hierarchical trusted code for content protection in computers (U.S. Patent 6775779 B1)]</ref> were filed on April 6, 1999.
During its [[Windows Hardware Engineering Conference 2000|Windows Hardware Engineering Conference of 2000]], Microsoft had shown a presentation titled ''Privacy, Security, and Content in Windows Platforms'' which focused on the protection of end user privacy and intellectual property.<ref>Microsoft. [http://download.microsoft.com/download/a/f/c/afcf8195-0eda-4190-a46d-aa60b45e0740/Security.ppt "Privacy, Security, and Content in Windows Platforms"]</ref> The presentation mentioned turning Windows into a "platform of trust" designed to protect the privacy of individual users. Microsoft would show a similar presentation during [[Windows Hardware Engineering Conference 2001|WinHEC 2001]].<ref>Microsoft. [http://download.microsoft.com/download/a/f/c/afcf8195-0eda-4190-a46d-aa60b45e0740/Secure.ppt "Privacy, Security, and Content Protection"]</ref>
The NGSCB was publicly unveiled under the name "Palladium" on June 24, 2002 in an article by Steven Levy of ''Newsweek'' that focused on its origin, design and features.<ref>Levy, Steven. (June 24, 2002). [http://www.newsweek.com/big-secret-145809 "The Big Secret"]</ref><ref>Geek.com. (June 24, 2002). [http://www.geek.com/chips/palladium-microsofts-big-plan-for-the-pc-549258/ "'Palladium': Microsoft's big plan for the PC"]</ref><ref>ExtremeTech. (June 24, 2002). [http://www.extremetech.com/extreme/51436-palladium-microsoft-revisits-digitalrights-management "'Palladium': Microsoft Revisits Digital Rights Management"]</ref> Levy stated that the technology would allow users to identify and authenticate themselves, encrypt data to protect it from unauthorized access, and allow users to enforce policies related to the use of their information. As examples of policies that could be enforced, Levy stated that users could send e-mail messages accessible only by the intended recipient, or create Microsoft Word documents that could only be read a week after they were created. To provide this functionality, the technology would require specially designed hardware components, including updated processors, chipsets, peripherals, and a Trusted Platform Module. In August 2002, Microsoft posted a recruitment advertisement seeking a group program manager to provide vision and industry leadership in the development of several Microsoft technologies, including its NGSCB architecture.<ref>Lettice, John. (August 13, 2002). [http://www.theregister.co.uk/2002/08/13/ms_recruits_for_palladium_microkernel/ "MS recruits for Palladium microkernel and/or DRM platform"]</ref>
In 2003, Microsoft publicly demonstrated the NGSCB for the first time at its Windows Hardware Engineering Conference<ref>Bekker, Scott. (May 6, 2003). [http://redmondmag.com/articles/2003/05/06/palladium-on-display-at-winhec.aspx "'Palladium' on Display at WinHEC"]</ref><ref>Microsoft PressPass. [http://www.microsoft.com/en-us/news/features/2003/may03/05-07ngscb.aspx "At WinHEC, Microsoft Discusses Details of Next-Generation Secure Computing Base"]</ref><ref>Evers, Joris. (May 7, 2003). [http://www.networkworld.com/article/2342054/lan-wan/microsoft-turns-to-emulators-for-security-demo.html "Microsoft turns to emulators for security demo"]</ref> and released a developer preview of the technology later that year during its [[PDC 2003|Professional Developers Conference]].<ref>Rooney, Paula; Montalbano, Elizabeth. (October 1, 2003). [http://www.crn.com/news/channel-programs/18839939/microsoft-to-hand-over-early-whidbey-yukon-code-at-pdc.htm "Microsoft to Hand Over Early Whidbey, Yukon Code At PDC"]</ref><ref>Evers, Joris. (October 30, 2003). [http://www.networkworld.com/article/2338050/lan-wan/developers-get-hands-on-microsoft-s-ngscb.html "Developers get hands on Microsoft's NGSCB"]</ref><ref>Microsoft. [http://www.microsoft.com/en-us/news/features/2003/dec03/12-15yearreview.aspx "A Review of Microsoft Technology for 2003, Preview for 2004"]</ref>
[[File:NGSCBWHEC04.png|right|thumb|Diagram of NGSCB architecture revision shown during WinHEC 2004.]]
During [[Windows Hardware Engineering Conference 2004|WinHEC 2004]], Microsoft announced that it would revise the technology in response to feedback from customers and independent software vendors who stated that they did not want to rewrite their existing programs in order to benefit from its functionality.<ref>Evers, Joris. (May 5, 2004). [http://www.networkworld.com/news/2004/0505msngscb.html "WinHEC: Microsoft revisits NGSCB security plan"]</ref><ref>Sanders, Tom. (May 6, 2004) [https://web.archive.org/web/20051129072044/http://www.vnunet.com/vnunet/news/2124916/microsoft-shakes-longhorn-security "Microsoft shakes up 'Longhorn' security"]</ref> After the announcement, some reports stated that Microsoft would cease development of the technology.<ref>Bangeman, Eric. (May 5, 2004). [http://arstechnica.com/uncategorized/2004/05/3736-2/ "Microsoft kills Next-Generation Secure Computing Base"]</ref><ref>Rooney, Paula. (May 5, 2004). [http://www.crn.com/news/security/18841713/microsoft-shelves-ngscb-project-as-nx-moves-to-center-stage.htm "Microsoft shelves NGSCB project as NX moves to center stage"]</ref> Microsoft denied the claims and reaffirmed its commitment to delivering the technology.<ref>eWeek. (May 5, 2004). [http://www.eweek.com/c/a/Windows/Microsoft-Palladium-Is-Still-Alive-and-Kicking/ "Microsoft: Palladium is still alive and kicking"]</ref><ref>Thurrott, Paul. (May 7, 2004). [http://winsupersite.com/product-review/winhec-2004-show-report-and-photo-gallery "WinHEC 2004 Show Report and Photo Gallery"]</ref> Later that year, Microsoft's Steve Heil stated that the company would make additional changes to the technology based on feedback from the industry.<ref>Fried, Ina. (September 8, 2004). [http://news.cnet.com/Controversial-Microsoft-plan-heads-for-Longhorn/2100-1016_3-5357726.html "Controversial Microsoft plan heads for 'Longhorn'"]</ref>
In 2005, Microsoft's lack of continual updates on its progress with the technology had led some in the industry to speculate that it had been cancelled.<ref>Ever, Joris. (February 24, 2005). [http://www.pcworld.com/article/119798/article.html "Silence Fuels Speculation on Microsoft Security Plan"]</ref> At the annual Microsoft Management Summit event, then Microsoft CEO Steve Ballmer said that the company was building on the foundation it had started with the NGSCB to create a new set of hypervisor technologies for its Windows operating system.<ref name="''Microsoft Management Summit'.">Microsoft. (April 20, 2005) [http://www.microsoft.com/en-us/news/exec/steve/2005/04-20managementsummit.aspx "Steve Ballmer: Microsoft Management Summit"]</ref> During [[Windows Hardware Engineering Conference 2005|WinHEC 2005]], Microsoft announced that it had scaled back its plans for the technology in order to ship the post-reset Windows "Longhorn" operating system within a reasonable timeframe. Instead of providing an isolated software environment, the NGSCB would offer full operating system volume encryption with a feature known as ''Secure Startup'' (which would later be renamed as ''Bitlocker Drive Encryption'').<ref name="'Longhorn' security gets its teeth kicked out.">Sanders, Tom. (April 26, 2005). [https://web.archive.org/web/20050428001948/http://www.vnunet.com/news/1162710 "'Longhorn' security gets its teeth kicked out"]</ref> Microsoft stated that it planned to deliver other aspects of its NGSCB architecture at a later date.<ref>Microsoft. [http://www.microsoft.com/resources/ngscb/default.mspx "Microsoft Shared Source Initiative Home Page"]</ref>
In July 2008, Peter Biddle stated that negative perception was the main contributing factor responsible for the cancellation of the architecture.<ref>Biddle, Peter. (July 16, 2008). [http://peternbiddle.wordpress.com/2008/07/16/perception-or-linus-gets-away-with-being-honest-again/ "Perception (or, Linus gets away with being honest again)"]</ref>
In Greek and Roman mythology, the term "palladium" refers to an object that the safety of a city or nation was believed to be dependent upon.<ref>Greek Mythology Index. [http://www.mythindex.com/greek-mythology/P/Palladium.html "PALLADIUM"]</ref>
On January 24, 2003, Microsoft announced that "Palladium" had been renamed as the "Next-Generation Secure Computing Base." According to NGSCB product manager Mario Juarez, the new name was chosen not only to reflect Microsoft's commitment to the technology in the upcoming decade, but also to avoid any legal conflict with an unnamed company that had already acquired the rights to the Palladium name. Juarez acknowledged that the previous name had been a source of criticism, but denied that the decision was made by Microsoft in an attempt to deflect criticism.<ref name="'What's in a name? Not Palladium."/>
[[File:Nexus.png|right|thumb|Diagram of the Nexus design.]]
The Nexus, previously referred to as the "Nub"<ref name="Dangers of TCPA/Palladium."/> or "Trusted Operating Root"<ref>Microsoft PressPass. [http://web.archive.org/web/20020805211111/http://www.microsoft.com/presspass/features/2002/jul02/0724palladiumwp.asp "'Palladium': A Business Overview"]</ref><ref>Biddle, Peter. (September 19, 2002). [http://www.metzdowd.com/pipermail/cryptography/2002-September/003146.html "Re: Cryptogram: 'Palladium' only for DRM"]</ref> is the new kernel introduced by the NGSCB. The Nexus is responsible for the secure interaction between the specialized hardware components, and is also responsible for the isolation and management of Nexus Computing Agents.
===Nexus Computing Agents===
Nexus Computing Agents are user-mode application processes managed by the Nexus kernel.
Nexus Computing Agents are divided into three categories: "Application," "Component," and "Trusted Service Provider."<ref>Cram, Ellen. (October 2003). [https://web.archive.org/web/20031202225017/http://msdn.microsoft.com/security/default.aspx?pull=/library/en-us/dnsecure/html/nca_considerations.asp "Development Considerations for Nexus Computing Agents"]</ref>
===Process isolation===
===Sealed storage===
Sealed storage refers to the use of encryption to protect locally stored data. Sealed storage differs from traditional encryption schemes in that it allows data to be decrypted only under conditions specified at the time of its encryption.
Attestation refers to validation of a NGSCB machine configuration. Attestation allows users to attest to the state of a hardware or software configuration by sending its cryptographic information to a trusted third-party; the third-party can then determine whether it should trust the configuration.
===Secure input===
===Secure output===
Encrypted memory was once considered for the NGSCB, but the idea was later discarded as the only threat conceived of that would warrant its inclusion was the circumvention of digital rights management technology.<ref>Biddle, Peter. (February 22, 2008). [http://peternbiddle.wordpress.com/2008/02/22/attack-isnt-news-and-there-are-mitigations/ "Attack isn't news, and there are mitigations"]</ref><ref>Biddle, Peter. (February 23, 2008). [http://peternbiddle.wordpress.com/2008/02/23/threat-model-irony/ "Threat Model Irony"]</ref>
===Trusted Platform Module===
The Trusted Platform Module is the hardware component that securely stores the cryptographic keys for the Nexus and Nexus Computing Agents, which makes the sealed storage and attestation features of the Nexus possible.
The Trusted Platform Module includes an asymmetric 2048-bit RSA key pair, referred to as the Endorsement Key (EK), which is unique to each particular module and is generated as part of its manufacturing process. The public key is accessible to applications or services that have established a trusted relationship with the owner, and is also used to provide the owner with Attestation Identity Keys (AIKs).
According to Microsoft, version 1.2 of the Trusted Platform Module is the first version compatible with its NGSCB architecture. Previous versions do not include the required functionality.<ref>Microsoft. [https://web.archive.org/web/20051228130120/http:/download.microsoft.com/download/8/d/5/8d5ec8cf-3e09-49e0-95dd-0a6a3ded510f/NGSCB_Privacy_Enhancements.doc "Privacy-Enabling Enhancements in the Next-Generation Secure Computing Base"]</ref>
==In builds of Windows "Longhorn"==
[[File:NGSCBCONFIG.png|right|thumb|A successful attempt to configure the Next-Generation Secure Computing Base in Windows "Longhorn" [[Windows Longhorn/6.0.4053.main.031022-1720|build 4053]].]]
In released pre-reset builds of Windows "Longhorn", NGSCB components reside in %SYSTEMDRIVE%\WINDOWS\NGSCB. The last build of Windows "Longhorn" known to include the NGSCB directory and subfolders is [[windows Server 2008/6.0.4066.main.040226-1010|build 4066]].<ref>BetaArchive forums. (May 2, 2014). [http://www.betaarchive.com/forum/viewtopic.php?p=370526#p370526 "Builds of 'Longhorn' with NGSCB?"]</ref>
The development of the Next-Generation Secure Computing Base ultimately led to the creation of Microsoft's Bitlocker drive encryption feature, which was one of the first mainstream device encryption features to support version 1.2 of the Trusted Platform Module, and the first device encryption feature to be integrated with the Windows operating system.<ref>Microsoft. [http://technet.microsoft.com/en-us/library/cc766200(v=WS.10).aspx "Windows BitLocker Drive Encryption Frequently Asked Questions"]</ref> Certain design elements of the NGSCB would become part of Microsoft's virtualization technologies.<ref name="''Microsoft Management Summit'."/><ref>Clarke, Gavin. (May 19, 2005). [http://www.theregister.co.uk/2005/05/19/_microsoft_virtualization/ "Microsoft running late in virtualization"]</ref> Microsoft's [[Windows 8]] operating system, released in 2012, includes a feature called ''Measured Boot'' which allows a trusted server to verify the integrity of the Windows startup process.<ref>Microsoft TechNet. [http://technet.microsoft.com/en-us/windows/dn168167.aspx "Windows 8 Boot Process - Security, UEFI, TPM"]</ref><ref>Microsoft TechNet. [http://technet.microsoft.com/en-us/windows/dn168169.aspx "Windows 8 Boot Security FAQ"]</ref><ref>Microsoft Software Developer Network (MSDN). [http://msdn.microsoft.com/en-us/library/windows/desktop/hh848050(v=vs.85).aspx "Measured Boot"]</ref> Although it is not directly related to the NGSCB architecture, it serves a purpose comparable to the architecture's attestation feature in that they are both designed to validate a platform's configuration.<ref>Microsoft. [http://download.microsoft.com/download/4/0/D/40DF6E51-DAD0-4CF8-B768-8E3B4A848D9C/secured-boot-measured-boot.docx "Secured Boot and Measured Boot: Hardening Early Boot Components against Malware"]</ref>
In addition, features based on those originally intended for the NGSCB would later become available in alternative operating systems. In 2012, ''Giesecke & Devrient'' produced a parallel execution environment called ''MobiCore'' for the Android operating system designed to host secure user applications and protect confidential data.<ref>Giesecke & Devrient. (May 4, 2012). [http://www.gi-de.com/en/about_g_d/press/press_releases/G%26D-announces-MobiCore%C2%AE-integrated-security-platform-to-support-Samsung-GALAXY-S-III-in-Europe-g19904.jsp "G&D announces MobiCore® integrated security platform to support Samsung GALAXY S III in Europe"]</ref> In 2013, [[Apple]] released a new feature for its iOS operating system called ''Secure Enclave'' to protect a user's biometric information.<ref>Apple. (September 10, 2013). [http://www.apple.com/pr/library/2013/09/10Apple-Announces-iPhone-5s-The-Most-Forward-Thinking-Smartphone-in-the-World.html "Apple Announces iPhone 5s—The Most Forward-Thinking Smartphone in the World"]</ref>
==External links==
* [https://www.microsoft.com/resources/ngscb/default.mspx Microsoft Next-Generation Secure Computing Base Home Page]
[[Category:Cancelled Projects]]
[[Category:Windows "Longhorn"]]

Revision as of 14:36, 13 September 2019

Next-Generation Secure Computing Base IS VANDALIZED