System and method enabling parallel processing of hash functions using authentication checkpoint hashes
원문보기
IPC분류정보
국가/구분
United States(US) Patent
등록
국제특허분류(IPC7판)
G06F-021/00
G06F-021/51
G06F-021/64
출원번호
US-0140282
(2013-12-24)
등록번호
US-8966278
(2015-02-24)
발명자
/ 주소
Wolf, Bryan D.
출원인 / 주소
IGT
대리인 / 주소
Neal, Gerber & Eisenberg LLP
인용정보
피인용 횟수 :
0인용 특허 :
188
초록▼
Systems and methods enabling parallel processing of hash functions are provided. A data string including a plurality of pieces arranged in an order is hashed using a hash function to determine a plurality of authentication checkpoint hashes associated with the pieces. To authenticate the data string
Systems and methods enabling parallel processing of hash functions are provided. A data string including a plurality of pieces arranged in an order is hashed using a hash function to determine a plurality of authentication checkpoint hashes associated with the pieces. To authenticate the data string, the pieces are grouped into sets, and the authentication checkpoint hash associated with the piece following all other pieces of that set in the order is associated with that set. The system simultaneously performs a separate hash process on each set. That is, the system hashes the pieces of that set using the hash function to determine a result hash, and compares that result hash with the authentication checkpoint hash associated with that set. The initial input to the hash function for the hash process for each set includes one of the pieces and either a default seed or an authentication checkpoint hash.
대표청구항▼
1. A system comprising: at least one processor;at least one display device; andat least one memory device that stores a plurality of instructions which, when executed by the at least one processor, cause the at least one processor to operate with the at least one display device to:(a) during a first
1. A system comprising: at least one processor;at least one display device; andat least one memory device that stores a plurality of instructions which, when executed by the at least one processor, cause the at least one processor to operate with the at least one display device to:(a) during a first time period, for a first piece of a code including a plurality of pieces: (i) hash the first piece of the code and a default seed to obtain a first result hash;(ii) determine whether the first result hash matches a first authentication checkpoint hash;(iii) if the first result hash matches the first authentication checkpoint hash, authorize the first piece of the code for execution; and(iv) if the first result hash does not match the first authentication checkpoint hash, not authorize the first piece of the code for execution;(b) during a second time period that is initiated before completion of the first time period and that at least partially overlaps the first time period, for a second different piece of the code: (i) hash the second piece of the code and the first authentication checkpoint hash to obtain a second result hash;(ii) determine whether the second result hash matches a second authentication checkpoint hash;(iii) if the second result hash matches the second authentication checkpoint hash, authorize the second piece of the code for execution; and(iv) if the second result has does not match the second authentication checkpoint hash, not authorize the second piece of the code for execution; and(c) if each piece of the code is authorized for execution, execute the code and display an image generated by the executed code. 2. The system of claim 1, wherein the first time period and the second time period completely overlap. 3. The system of claim 1, which includes a plurality of processors including a first processor and a second different processor, and wherein the first processor performs (a) and the second processor performs (b). 4. The system of claim 1, wherein the second time period expires before the first time period expires. 5. The system of claim 1, wherein the plurality of instructions, when executed by the at least one processor, cause the at least one processor to: (1) if the first result hash does not match the first authentication checkpoint hash, generate a first error message identifying the first piece of the code; and(2) if the second result hash does not match the second authentication checkpoint hash, generate a second error message identifying the second piece of the code. 6. A system comprising: at least one processor;at least one display device; andat least one memory device that stores a plurality of instructions which, when executed by the at least one processor, cause the at least one processor to operate with the at least one display device to:(a) during a first time period, for a designated one of a plurality of pieces of a code, said designated piece of the code preceding each remaining piece of the code in a designated order: (i) hash said designated piece of the code and a default seed to obtain a first result hash;(ii) determine whether the first result hash matches an authentication checkpoint hash associated with said designated piece of the code, said authentication checkpoint hash being one of a plurality of different authentication checkpoint hashes, each of the authentication checkpoint hashes being associated with a different piece of the code;(iii) if the first result hash matches said authentication checkpoint hash associated with said designated piece of the code, authorize said designated piece of the code for execution; and(iv) if the first result hash does not match said authentication checkpoint hash associated with said designated piece of the code, not authorize said designated piece of the code for execution;(b) during a second time period that is initiated before completion of the first time period and that at least partially overlaps the first time period, for each remaining piece of the code: (i) hash said piece of the code and the authentication checkpoint hash associated with the piece of the code immediately preceding said piece of the code in the designated order to obtain a result hash;(ii) determine whether the result hash matches the authentication checkpoint hash associated with said piece of the code;(iii) if the result hash matches the authentication checkpoint hash associated with said piece of the code, authorize said piece of the code for execution; and(iv) if the result hash does not match the authentication checkpoint hash associated with said piece of the code, not authorize said piece of the code for execution; and(c) if each of the pieces of the code are authorized for execution, execute the code and display an image generated by the executed code. 7. The system of claim 6, wherein the second time period completely overlaps the first time period. 8. The system of claim 6, which includes a plurality of processors including a first processor and a different second processor, and wherein the first processor performs (a) and the second processor performs (b) for at least one remaining piece of the code. 9. The system of claim 6, wherein the plurality of instructions, when executed by the at least one processor, cause the at least one processor to: (1) if the first result hash does not match the authentication checkpoint hash associated with said designated piece of the code, generate a first error message identifying the designated piece of the code; and(2) for each remaining piece of the code, if the result hash does not match the authentication checkpoint hash associated with said piece of the code, generate a second error message identifying said piece of the code. 10. The system of claim 6, wherein the plurality of instructions, when executed by the at least one processor, cause the at least one processor to initiate the first time period and the second time period at a same point in time. 11. A method comprising: (a) during a first time period, for a first piece of a code including a plurality of pieces: (i) causing at least one processor to execute a plurality of instructions to hash the first piece of the code and a default seed to obtain a first result hash;(ii) causing the at least one processor to execute the plurality of instructions to determine whether the first result hash matches a first authentication checkpoint hash;(iii) if the first result hash matches the first authentication checkpoint hash, causing the at least one processor to execute the plurality of instructions to authorize the first piece of the code for execution; and(iv) if the first result hash does not match the first authentication checkpoint hash, causing the at least one processor to execute the plurality of instructions to not authorize the first piece of the code for execution;(b) during a second time period that is initiated before completion of the first time period and that at least partially overlaps the first time period, for a second different piece of the code: (i) causing the at least one processor to execute the plurality of instructions to hash the second piece of the code and the first authentication checkpoint hash to obtain a second result hash;(ii) causing the at least one processor to execute the plurality of instructions to determine whether the second result hash matches a second authentication checkpoint hash;(iii) if the second result hash matches the second authentication checkpoint hash, causing the at least one processor to execute the plurality of instructions to authorize the second piece of the code for execution; and(iv) if the second result has does not match the second authentication checkpoint hash, causing the at least one processor to execute the plurality of instructions to not authorize the second piece of the code for execution; and(c) if each piece of the code is authorized for execution, causing the at least one processor to execute the plurality of instructions to execute the code and operate with at least one display device to display an image generated by the executed code. 12. The method of claim 11, wherein the first time period and the second time period completely overlap. 13. The method of claim 11, which includes causing a first processor to execute the plurality of instructions to perform (a) and causing a second different processor to execute the plurality of instructions to perform (b). 14. The method of claim 11, wherein the second time period expires before the first time period expires. 15. The method of claim 11, which includes causing the at least one processor to execute the plurality of instructions to: (1) if the first result hash does not match the first authentication checkpoint hash, generate a first error message identifying the first piece of the code; and(2) if the second result hash does not match the second authentication checkpoint hash, generate a second error message identifying the second piece of the code. 16. A method comprising: (a) during a first time period, for a designated one of a plurality of pieces of a code, said designated piece of the code preceding each remaining piece of the code in a designated order: (i) causing at least one processor to execute a plurality of instructions to hash said designated piece of the code and a default seed to obtain a first result hash;(ii) causing the at least one processor to execute the plurality of instructions to determine whether the first result hash matches an authentication checkpoint hash associated with said designated piece of the code, said authentication checkpoint hash being one of a plurality of different authentication checkpoint hashes, each of the authentication checkpoint hashes being associated with a different piece of the code;(iii) if the first result hash matches said authentication checkpoint hash associated with said designated piece of the code, causing the at least one processor to execute the plurality of instructions to authorize said designated piece of the code for execution; and(iv) if the first result hash does not match said authentication checkpoint hash associated with said designated piece of the code, causing the at least one processor to execute the plurality of instructions to not authorize said designated piece of the code for execution;(b) during a second time period that is initiated before completion of the first time period and that at least partially overlaps the first time period, for each remaining piece of the code: (i) causing the at least one processor to execute the plurality of instructions to hash said piece of the code and the authentication checkpoint hash associated with the piece of the code immediately preceding said piece of the code in the designated order to obtain a result hash;(ii) causing the at least one processor to execute the plurality of instructions to determine whether the result hash matches the authentication checkpoint hash associated with said piece of the code;(iii) if the result hash matches the authentication checkpoint hash associated with said piece of the code, causing the at least one processor to execute the plurality of instructions to authorize said piece of the code for execution; and(iv) if the result hash does not match the authentication checkpoint hash associated with said piece of the code, causing the at least one processor to execute the plurality of instructions to not authorize said piece of the code for execution; and(c) if each of the pieces of the code are authorized for execution, execute the code and display an image generated by the executed code. 17. The method of claim 16, wherein the second time period completely overlaps the first time period. 18. The method of claim 16, which includes causing a first processor to execute the plurality of instructions to perform (a) and causing a second different processor to execute the plurality of instructions to perform (b). 19. The method of claim 16, which includes causing the at least one processor to execute the plurality of instructions to: (1) if the first result hash does not match the authentication checkpoint hash associated with said designated piece of the code, generate a first error message identifying the designated piece of the code; and(2) for each remaining piece of the code, if the result hash does not match the authentication checkpoint hash associated with said piece of the code, generate a second error message identifying said piece of the code. 20. The method of claim 16, which includes causing the at least one processor to execute the plurality of instructions to initiate the first time period and the second time period at a same point in time.
연구과제 타임라인
LOADING...
LOADING...
LOADING...
LOADING...
LOADING...
이 특허에 인용된 특허 (188)
Wobber Edward (Menlo Park CA) Abadi Martin (Palo Alto CA) Birrell Andrew (Los Altos CA) Lampson Butler (Cambridge MA), Access control subsystem and method for distributed computer system using locally cached authentication credentials.
Knobl,Karl Heinz; Menzenbach,Christof; Eibach,Wolfgang G; Nuttall,Mark Patrick; Phippen,Robert William, Apparatus and method for establishing communication in a computer network.
Boyle John M. (Cranford NJ) Maiwald Eric S. (Southfields NY) Snow David W. (Convent Station NJ), Apparatus and method for providing multi-level security for communication among computers and terminals on a network.
Fisher Laren D. (Henderson NV) Vedeen Leonard I. (Las Vegas NV) Gutknecht LeRoy N. (Las Vegas NV), Apparatus and method for reading data encoded on circular objects, such as gaming chips.
Peterson, Leonard J.; Freedman, Steven J.; Partovi, Hadi; Endres, Raymond E.; D'Souza, David J.; Ellerman, Erik Castedo; Jiggins, Julian P., Client-side system for scheduling delivery of web content and locally managing the web content.
Karolak Dale W. (Ft. Wayne IN) Shirey Carl L. (Ft. Wayne IN) Steiner Wesley D. (Ft. Wayne IN) Rue Robert T. (Ft. Wayne IN), Communications management system architecture.
Acharya, Swarup; Korth, Henry F.; Poosala, Viswanath, Computer implemented method and apparatus for fulfilling a request for information content with a user-selectable version of a file containing that information content.
Sato Albert (Austin TX) Baker David C. (Austin TX) Waldron Christie J. (Plano TX), Computer system having system feature extension software containing a self-describing feature table for accessing I/O de.
Hatakeyama, Takahisa; Yoshioka, Makoto; Miyazawa, Yuji, Content usage control system, content usage apparatus, computer readable recording medium with program recorded for computer to execute usage method.
Lennon Richard E. (Woodstock NY) Matyas Stephen M. (Poughkeepsie NY) Meyer Carl H. W. (Kingston NY) Oseas Jonathan (Hurley NY) Prentice Paul N. (Hyde Park NY) Tuchman Walter L. (Woodstock NY), Cryptographic verification of operational keys used in communication networks.
Byers Larry L. (Appley Valley MN) Desubijana Joseba M. (Minneapolis MN) Michaelson Wayne A. (Circle Pines MN), Data block check sequence generation and validation in a file cache system.
Ikuta Masanao,JPX ; Kambe Tomoaki,JPX ; Takida Satoshi,JPX, Data caching apparatus, data caching method and medium recorded with data caching program in client/server distributed system.
Blatter Harold ; Horlander Thomas Edward ; Bridgewater Kevin Elliott ; Deiss Michael Scott, Decoding system and data format for processing and storing encrypted broadcast, cable or satellite video data.
Goudard Jean-Louis (Guyancourt FRX) Pottier Denis (L\Hay les Roses FRX) Hoppe Joseph (Les Molires FRX), Device for protecting the validity of time sensitive information.
Alcorn Allan E. (Portola Valley CA) Barnett Michael (Santa Clara CA) Giacalone ; Jr. Louis D. (Palo Alto CA) Levinthal Adam E. (Redwood City CA), Electronic casino gaming apparatus with improved play capacity, authentication and security.
Alcorn Allan E. ; Barnett Michael ; Giacalone ; Jr. Louis D. ; Levinthal Adam E., Electronic casino gaming system with improved play capacity, authentication and security.
Krajewski ; Jr. Marjan (Acton MA) Chipchak John C. (Dracut MA) Chodorow David A. (Groton MA) Trostle Jonathan T. (Lexington MA) Baldwin Peter T. (Rowley MA), Electronic information network user authentication and authorization system.
Sarbin Theodore R. (Reno NV) Brugger Paul R. (Carson City NV) Wellman Walter H. (Sparks NV) Kuhns Darryl E. (Reno NV), Game machine data transfer system utilizing portable data units.
Traversat Bernard A. ; Saulpaugh Tom ; Schmidt Jeffrey A. ; Slaughter Gregory L. ; Tracey William J. ; Woodward Steve, Generic schema for storing configuration information on a server computer.
Asano, Tomoyuki; Osawa, Yoshitomo, Information transmission system and method, drive device and access method, information recording medium, device and method for producing recording medium.
Ishibashi,Yoshihito; Oishi,Tateo; Matsuyama,Shinako; Asano,Tomoyuki; Muto,Akihiro; Kitahara,Jun, Information transmission system, transmitter, and transmission method as well as information reception system, receiver and reception method.
Sinha,Saurabh; Jakubowski,Mariusz H.; Venkatesan,Ramarathnam; Chen,Yuqun; Cary,Matthew; Pang,Ruoming, Integrity ordainment and ascertainment of computer-executable instructions with consideration for execution context.
Brunner Norman (Gurnee IL) Pajak Phillip (Western Springs IL) Hilgendorf Douglas (Gurnee all of IL), Memory integrity checking system for a gaming device.
Khan Raheel Ahmed ; Burleson David Brent ; Filion John Thomas ; Cheek Donald Scott, Method and apparatus for a game delivery service including flash memory and a game back-up module.
Christopher H. Stewart ; Svilen B. Pronev ; Darrell J. Starnes, Method and apparatus for efficient storage and retrieval of objects in and from an object storage device.
Lambert Mark L. ; van der Rijn Daniel J. G. ; Kemper David J. ; Verkler Jay L., Method and apparatus for storing and delivering documents on the internet.
Pease Logan L. (Reno NV) Richard Delbert (Sparks NV) Dickinson ; deceased Peter D. (late of Reno NV by Kathy E. Dickinson ; executrix ), Method and apparatus for verifying the contents of a storage device.
Sanjay Agraharam ; Robert Edward Markowitz ; Kenneth H. Rosen ; David Hilton Shur ; Joel A. Winthrop, Method and apparatus to enhance a multicast information stream in a communication network.
Alcorn Allan E. ; Hale Richard L., Method and apparatus using geographical position and universal time determination means to provide authenticated, secure, on-line communication between remote gaming locations.
Arnold Thomas Andrew ; Pettitt John Philip ; Rendleman ; Jr. Jesse Noel ; Lewis ; Jr. Robert Lincoln, Method and system for delivering digital products electronically.
Fields, Duane Kimbell; Gregg, Thomas Preston; Hassinger, Sebastian Daniel; Hurley, II, William Walter; Kolb, Mark Andrew; Vu, Stacy Braden, Method and system for distributing image-based content on the internet.
Lathrop Frederick L. (Delray Beach FL) Rowland Kenneth A. (Boynton Beach FL), Method and system for providing device driver support which is independent of changeable characteristics of devices and.
Hellwig Friedrich-Wilhelm (Hemhofen DEX) Schrei Werner (Kleinsendelbach DEX), Method for checking data written into buffered write-read memories in numerically controlled machine tools.
Graunke Gary L. ; Carbajal John ; Maliszewski Richard L. ; Rozas Carlos V., Method for securely distributing a conditional use private key to a trusted entity on a remote system.
Alcorn Allan E. ; Barnett Michael ; Giacalone ; Jr. Louis D ; Levinthal Adam E., Method of authenticating game data sets in an electronic casino gaming system.
Scott, Mark; Cheng, Anita; Ho, Simon; Irimescu, George; Voineag, Dorel; Wong, William; Yao, Min; Zadeh, Row J., Method, system, and computer program product for providing voice over the internet communication.
Shear, Victor H.; Van Wie, David M.; Weber, Robert P., Methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information.
Uesaka Yasushi,JPX ; Yamauchi Kazuhiko,JPX ; Kozuka Masayuki,JPX ; Higaki Nobuo,JPX ; Horiuchi Koichi,JPX ; Haruna Syusuke,JPX, Microprocessor suitable for reproducing AV data while protecting the AV data from illegal copy and image information processing system using the microprocessor.
Lampson Butler W. (Cambridge MA) Hawe William R. (Pepperell MA) Gupta Amar (Northboro MA) Spinney Barry A. (Wayland MA), Pipelined cryptography processor and method for its use in communication networks.
Audebert Yves (Croissy-sur-Seine FRX) Delahaye Achille (Chennev Ieres-sur-Marne FRX), Portable electronic device to establish public loyalty to a medium or similar.
Lin Mengjou, Process scheduling for streaming data through scheduling of disk jobs and network jobs and the relationship of the scheduling between these types of jobs.
Theriault Roger ; Lockhart Thomas Wayne,CAX ; Battin Robert D., Proxy host computer and method for accessing and retrieving information between a browser and a proxy.
Dolan George M. (Charlotte NC) Holloway Christopher J. (Woking GB2) Matyas ; Jr. Stephen M. (Poughkeepsie NY), Public key data communications system under control of a portable security device.
Bel,Hendrik Jan; Lokhoff,Gerardus Cornelis Petrus; Breugom,Michel Ronald; Engelen,Dirk Valentinus Rene; Van De Poel,Peter, Receiving device for securely storing a content item, and playback device.
Hedges Richard A. (130 Montecito Oakland CA 94610) Shockley David L. (340 Dorantes San Francisco CA 94116) Fralick Stanley C. (21476 Sara Hills Ct. Saratoga CA 95070) Kane Paul H. (10471 Scenic Cir. , Remote gaming system.
Schneier Bruce ; Walker Jay ; Jorasch James, Remote-auditing of computer generated outcomes and authenticated biling and access control system using cryptographic an.
Gidron,Yoad; Holder,Ophir; Teichholtz,Haim; Reich,Benny; Gur Ari,Yaron; Schiller,Michael, Rule-based system and method for managing the provisioning of user applications on limited-resource and/or wireless devices.
Tso Michael Man-Hak ; Jing Jin ; Knauerhase Robert Conrad ; Romrell David Alfred ; Gillespie Daniel Joshua ; Bakshi Bikram Singh ; Sathyanarayan Seshardi, Scaling proxy server sending to the client a graphical user interface for establishing object encoding preferences after receiving the client's request for the object.
Vaitzblit Lev (Concord MA) Ramakrishnan Kadangode K. (Maynard MA) Tzelnic Percy (Concord MA), Scheduling and admission control policy for a continuous media server.
Duri,Sastry S.; Gruteser,Marco O.; Liu,Xuan; Moskowitz,Paul A.; Perez,Ronald; Schonberg,Edith G.; Singh,Moninder; Tang,Jung Mu; Tresser,Charles P., Secure system and method for enforcement of privacy policy and protection of confidentiality.
Kaish Norman (Whitestone NY), Security arrangement for and method of rendering microprocessor-controlled electronic equipment inoperative after occurr.
Hibino Toshiro (Kyoto-fu JPX) Yamato Satoshi (Kyoto-fu JPX), Security systems and methods for a videographics and authentication game/program fabricating device.
Chandra Ashileshwari N. (Mahopac NY) Comerford Liam D. (Carmel NY) White Steve R. (New York NY), Software protection system using a single-key cryptosystem, a hardware-based authorization system and a secure coprocess.
Doherty, Robert J.; Tierney, Peter L.; Arnaoutoglou-Andreou, Marios, System and embedded license control mechanism for the creation and distribution of digital content files and enforcement of licensed use of the digital content files.
England,Paul; DeTreville,John D.; Lampson,Butler W., System and method for authenticating an operating system to a central processing unit, providing the CPU/OS with secure storage, and authenticating the CPU/OS to a third party.
Duane Kimbell Fields ; Thomas Preston Gregg ; Sebastian Daniel Hassinger ; William Walter Hurley, System and method for cooperative client/server customization of web pages.
Johnson, Peter J.; Brendall, Eric, System and method for verifying the contents of a mass storage device before granting access to computer readable data stored on the device.
Ford, Daniel A.; Kraft, Reiner; Tewari, Gaurav, System and technique for dynamic information gathering and targeted advertising in a web based model using a live information selection and analysis tool.
Ginter Karl L. ; Shear Victor H. ; Sibert W. Olin ; Spahn Francis J. ; Van Wie David M., Systems and methods for secure transaction management and electronic rights protection.
Ginter, Karl L.; Shear, Victor H.; Spahn, Francis J.; Van Wie, David M., Systems and methods for secure transaction management and electronic rights protection.
Ginter,Karl L.; Shear,Victor H.; Spahn,Francis J.; Van Wie,David M., Systems and methods for secure transaction management and electronic rights protection.
Ginter,Karl L.; Shear,Victor H.; Spahn,Francis J.; Van Wie,David M., Systems and methods for secure transaction management and electronic rights protection.
Hall,Edwin J.; Shear,Victor H.; Tomasello,Luke S.; Van Wie,David M.; Weber,Robert P.; Worsencroft,Kim; Xu,Xuejun, Techniques for defining, using and manipulating rights management data structures.
Nakamura Hiroki,JPX ; Kusumi Yuki,JPX ; Oashi Masahiro,JPX ; Shimoji Tatsuya,JPX, Video on demand system with a transmission schedule table in the video server including entries for client identifiers,.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.