RU2004106183A - Система для связывания секретов с компьютерной системой, имеющей некоторый допуск на аппаратные изменения - Google Patents

Система для связывания секретов с компьютерной системой, имеющей некоторый допуск на аппаратные изменения Download PDF

Info

Publication number
RU2004106183A
RU2004106183A RU2004106183/09A RU2004106183A RU2004106183A RU 2004106183 A RU2004106183 A RU 2004106183A RU 2004106183/09 A RU2004106183/09 A RU 2004106183/09A RU 2004106183 A RU2004106183 A RU 2004106183A RU 2004106183 A RU2004106183 A RU 2004106183A
Authority
RU
Russia
Prior art keywords
class
components
prime
classes
component
Prior art date
Application number
RU2004106183/09A
Other languages
English (en)
Other versions
RU2348968C2 (ru
Inventor
Эйдан Т. ХЬЮЗ (US)
Эйдан Т. ХЬЮЗ
Original Assignee
Майкрософт Корпорейшн (Us)
Майкрософт Корпорейшн
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 Майкрософт Корпорейшн (Us), Майкрософт Корпорейшн filed Critical Майкрософт Корпорейшн (Us)
Publication of RU2004106183A publication Critical patent/RU2004106183A/ru
Application granted granted Critical
Publication of RU2348968C2 publication Critical patent/RU2348968C2/ru

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/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/125Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
    • DTEXTILES; PAPER
    • D01NATURAL OR MAN-MADE THREADS OR FIBRES; SPINNING
    • D01DMECHANICAL METHODS OR APPARATUS IN THE MANUFACTURE OF ARTIFICIAL FILAMENTS, THREADS, FIBRES, BRISTLES OR RIBBONS
    • D01D1/00Treatment of filament-forming or like material
    • D01D1/10Filtering or de-aerating the spinning solution or melt
    • D01D1/106Filtering
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61PSPECIFIC THERAPEUTIC ACTIVITY OF CHEMICAL COMPOUNDS OR MEDICINAL PREPARATIONS
    • A61P31/00Antiinfectives, i.e. antibiotics, antiseptics, chemotherapeutics
    • A61P31/04Antibacterial agents
    • 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]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/125Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
    • G06F21/126Interacting with the operating system
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy
    • G11B20/00731Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction
    • G11B20/00746Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific number
    • G11B20/00782Circuits for prevention of unauthorised reproduction or copying, e.g. piracy involving a digital rights management system for enforcing a usage restriction wherein the usage restriction can be expressed as a specific number wherein the usage restriction limits the number of times a program can be installed

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Technology Law (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • General Chemical & Material Sciences (AREA)
  • Chemical & Material Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • General Health & Medical Sciences (AREA)
  • Public Health (AREA)
  • Veterinary Medicine (AREA)
  • Pharmacology & Pharmacy (AREA)
  • Organic Chemistry (AREA)
  • Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
  • Medicinal Chemistry (AREA)
  • Chemical Kinetics & Catalysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Oncology (AREA)
  • Communicable Diseases (AREA)
  • Textile Engineering (AREA)
  • Mechanical Engineering (AREA)
  • Storage Device Security (AREA)
  • Emergency Protection Circuit Devices (AREA)
  • Joining Of Building Structures In Genera (AREA)
  • Package Frames And Binding Bands (AREA)
  • Orthopedics, Nursing, And Contraception (AREA)

Claims (41)

1. Способ генерации сильнозащищенных идентификационных данных аппаратных средств (SHWID) для первой компьютерной системы, имеющей первую аппаратную конфигурацию, причем способ содержит этапы, на которых:
идентифицируют каждый класс компонентов в пределах первой аппаратной конфигурации, причем количество классов компонентов равно n,
определяют произведение cp класса для каждого класса компонентов,
определяют неполный секрет Pp для каждого класса компонентов, и
суммируют произведение cp класса и неполный секрет Pp для каждого класса компонентов для формирования n сильнозащищенных идентификаторов классов,
причем n сильнозащищенных идентификаторов классов в комбинации формируют сильнозащищенные идентификационные данные аппаратных средств (SHWID) первой компьютерной системы.
2. Способ по п.1, в котором n - целое число до приблизительно 16.
3. Способ по п.1, в котором произведение cp класса для каждого класса компонентов определяют с помощью следующих этапов, на которых:
выбирают определенное количество n классов компонентов,
идентифицируют эти n классов компонентов,
идентифицируют все экземпляры в пределах каждого класса компонентов,
назначают идентифицирующую строку для каждого экземпляра компонента,
генерируют простое число pp,q экземпляра для каждого экземпляра компонента, причем каждое простое число экземпляра - положительное простое число, и p представляет номер заданного класса компонентов в пределах от 1 до n, и q представляет q-й тип компонента в пределах первой аппаратной конфигурации, и
перемножают простые числа экземпляров в пределах каждого класса компонентов для формирования произведения cp класса для каждого класса компонентов.
4. Способ по п.3, в котором этап генерации простых чисел экземпляров содержит ввод идентифицирующей строки для каждого экземпляра компонента в функцию f(x) генерации простых чисел, где x - идентифицирующая строка, имеющая длину до приблизительно 65 000 символов.
5. Способ по п.4, в котором f(x) генерирует положительное простое число, имеющее значение, большее, чем 2t, где t - целое число в пределах от приблизительно 32 до приблизительно 2048.
6. Способ по п.1, в котором неполный секрет Pp для каждого класса компонентов определяют с помощью следующих этапов, на которых:
генерируют случайное число rp для каждого класса компонентов,
генерируют простое число pр класса для каждого класса компонентов, причем каждое простое число класса - положительное простое число,
выбирают требуемое количество m совпадений классов компонентов, причем m меньше или равно n,
определяют N, где N равно произведению m наименьших простых чисел pp классов,
определяют M, где M равно произведению (m-1) наибольших простых чисел pр классов, и М меньше N,
выбирают секретное число S, причем M <S <N,
определяют остаток dp класса для каждого класса компонентов, причем dp равен [S (mod pp)],
формируют первое двоичное значение для каждого класса компонентов, причем первое двоичное значение - это простое число pр класса для каждого класса, закодированное в первое двоичное число, имеющее до u битов, где u меньше t, и как u, так и t - меньше приблизительно 2048,
формируют второе двоичное значение для каждого класса компонентов, причем второе двоичное значение - это остаток dp класса для каждого класса, закодированный во второе двоичное число, имеющее до v битов, где v меньше t, и (u+v=t), и
соединяют первое двоичное значение и второе двоичное значение для формирования неполного секрета Pp для каждого класса компонентов, имеющего общее количество битов, равное t.
7. Способ по п.6, в котором каждое случайное число rp генерируют с использованием генератора случайных чисел, и оно имеет значение в пределах от 0 до меньше, чем 2u.
8. Способ по п.6, в котором этап генерации простых чисел pp классов для каждого класса компонентов содержит ввод случайного числа для каждого класса компонентов в функцию g(x) генерации простых чисел, где x - случайное число, имеющее длину до приблизительно 65 000 символов.
9. Способ по п.8, в котором g(x) генерирует положительное простое число, имеющее значение в пределах от больше, чем 2 до меньше, чем 2V.
10. Способ по п.1, в котором упомянутый способ инициируют во время этапа загрузки программного продукта на первой компьютерной системе.
11. Способ определения того, может ли программный продукт использоваться на второй компьютерной системе, имеющей вторую аппаратную конфигурацию, причем вторая компьютерная система идентична или отличается от первой компьютерной системы, при этом способ содержит этапы, на которых:
идентифицируют n классов компонентов, использовавшихся для определения сильнозащищенных идентификационных данных аппаратных средств (SHWID), сгенерированных способом по п.1,
идентифицируют все экземпляры в пределах каждого класса компонентов второй аппаратной конфигурации,
воссоздают идентифицирующую строку, которая представляет каждый отдельный экземпляр компонента,
генерируют простое число ip,q экземпляра для каждого экземпляра компонента, причем каждое простое число экземпляра - положительное простое число, и p представляет номер заданного класса компонентов в пределах от 1 до n, и q представляет q-й тип компонента в пределах первой аппаратной конфигурации или второй аппаратной конфигурации,
воссоздают возможные неполные секреты Pp,q классов, причем:
Pp,q=[cp (mod ip,q)]
извлекают возможные простые числа pp,q классов и возможные остатки dp,q классов из возможных неполных секретов Pp,q классов,
решают набор отношений сравнимости по модулю, полученных с помощью перестановки возможных простых чисел классов и возможных остатков классов, для генерации возможного секрета, и
проверяют возможный секрет, декодируя заданный зашифрованный текст и проверяя результат проверки по отношению к соответствующему известному открытому тексту,
причем:
если результирующий открытый текст соответствует известному открытому тексту, то загружают программный продукт на второй компьютерной системе, и
если результирующий открытый текст не соответствует известному открытому тексту, то препятствуют загрузке программного продукта на второй компьютерной системе.
12. Способ по п.11, в котором этап генерации простых чисел экземпляров содержит ввод идентифицирующей строки, которая представляет каждый отдельный экземпляр компонента, в функцию f(x) генерации простых чисел, где x - идентифицирующая строка, имеющая длину до приблизительно 65 000 символов.
13. Способ по п.12, в котором f(x) генерирует положительное простое число, имеющее значение большее 2t, где t - целое число в пределах от приблизительно 32 до приблизительно 2048.
14. Вычислительная система, содержащая по меньшей мере один модуль приложения, пригодный для использования в этой вычислительной системе, причем упомянутый по меньшей мере один модуль приложения содержит код приложения для выполнения способа по п.1.
15. Машиночитаемый носитель, хранящий машиноисполняемые команды для выполнения способа по п.1.
16. Машиночитаемый носитель, хранящий машиноисполняемые команды для выполнения способа генерации сильнозащищенных идентификационных данных аппаратных средств (SHWID) для первой компьютерной системы, имеющей первую аппаратную конфигурацию, при этом способ содержит этапы, на которых:
идентифицируют каждый класс компонентов в пределах первой аппаратной конфигурации, причем количество классов компонентов равно n,
определяют произведение cp класса для каждого класса компонентов,
определяют неполный секрет Pp для каждого класса компонентов, и
суммируют произведение cp класса и неполный секрет Pp для каждого класса компонентов для формирования n сильнозащищенных идентификаторов классов,
причем n сильнозащищенных идентификаторов классов в комбинации формируют сильнозащищенные идентификационные данные аппаратных средств (SHWID) первой компьютерной системы.
17. Машиночитаемый носитель по п.16, в котором n - целое число до приблизительно 16.
18. Машиночитаемый носитель по п.16, в котором произведение cp класса для каждого класса компонентов определяют с помощью следующих этапов, на которых:
выбирают определенное количество n классов компонентов,
идентифицируют эти n классов компонентов,
идентифицируют все экземпляры в пределах каждого класса компонентов,
назначают идентифицирующую строку для каждого экземпляра компонента,
генерируют простое число pp,q экземпляра для каждого экземпляра компонента, причем каждое простое число экземпляра - положительное простое число, и p представляет номер заданного класса компонентов в пределах от 1 до n, и q представляет q-й тип компонента в пределах первой аппаратной конфигурации, и
перемножают простые числа экземпляров в пределах каждого класса компонентов для формирования произведения cp класса для каждого класса компонентов.
19. Машиночитаемый носитель по п.18, в котором этап генерации простых чисел экземпляров содержит ввод идентифицирующей строки для каждого экземпляра компонента в функцию f(x) генерации простых чисел, где x - идентифицирующая строка, имеющая длину до приблизительно 65 000 символов.
20. Машиночитаемый носитель по п.19, в котором f(x) генерирует положительное простое число, имеющее значение большее 2t, где t - целое число в пределах от приблизительно 32 до приблизительно 2048.
21. Машиночитаемый носитель по п.16, в котором неполный секрет Pp для каждого класса компонентов определяют с помощью следующих этапов, на которых:
генерируют случайное число rp для каждого класса компонентов,
генерируют простое число pp класса для каждого класса компонентов, причем каждое простое число класса - положительное простое число,
выбирают требуемое количество m совпадений классов компонентов, причем m меньше или равно n,
определяют N, где N равно произведению m наименьших простых чисел pp классов,
определяют M, где М равно произведению (m-1) наибольших простых чисел pp классов, и М меньше N,
выбирают секретное число S, причем M <S <N,
определяют остаток dp класса для каждого класса компонентов, причем dp равен [S (mod pp)],
формируют первое двоичное значение для каждого класса компонентов, причем первое двоичное значение - простое число pp класса для каждого класса, закодированное в первое двоичное число, имеющее до u битов, где u меньше t, и как u, так и t меньше, чем приблизительно 2048,
формируют второе двоичное значение для каждого класса компонентов, причем второе двоичное значение - остаток dp класса для каждого класса, закодированный во второе двоичное число, имеющее до v битов, где v меньше t, и (u+v=t), и
соединяют первое двоичное значение и второе двоичное значение для формирования неполного секрета Pp для каждого класса компонентов, имеющего общее количество битов, равное t.
22. Машиночитаемый носитель по п.21, в котором каждое случайное число rp генерируют, используя генератор случайных чисел, и оно имеет значение в пределах от 0 до меньше, чем 2u.
23. Машиночитаемый носитель по п.21, в котором этап генерации простого числа pp класса для каждого класса компонентов содержит ввод случайного числа для каждого класса компонентов в функцию g(x) генерации простых чисел, где x - случайное число, имеющее длину до приблизительно 65 000 символов.
24. Машиночитаемый носитель по п.23, в котором g(x) генерирует положительное простое число, имеющее значение в пределах от больше, чем 2 до меньше, чем 2v.
25. Машиночитаемый носитель по п.16, в котором упомянутый способ инициируют во время этапа загрузки программного продукта на первой компьютерной системе.
26. Машиночитаемый носитель, хранящий машиноисполняемые команды для выполнения способа определения того, может ли программный продукт использоваться во второй компьютерной системе, имеющей вторую аппаратную конфигурацию, причем вторая компьютерная система идентична или отличается от первой компьютерной системы, при этом способ содержит этапы, на которых:
идентифицируют n классов компонентов, использовавшихся для определения сильнозащищенных идентификационных данных аппаратных средств (SHWID), сгенерированных способом по п.16,
идентифицируют все экземпляры в пределах каждого класса компонентов второй аппаратной конфигурации,
воссоздают идентифицирующую строку, которая представляет каждый отдельный экземпляр компонента,
генерируют простое число ip,q экземпляра для каждого экземпляра компонента, причем каждое простое число экземпляра - положительное простое число, и p представляет номер заданного класса компонентов в пределах от 1 до n, и q представляет q-й тип компонента в пределах первой аппаратной конфигурации или второй аппаратной конфигурации,
воссоздают возможные неполные секреты Pp,q классов, причем:
Pp,q=[Cp (mod ip,q)],
извлекают возможные простые числа pp,q классов и возможные остатки dp,q классов из возможных неполных секретов Pp,q классов,
решают набор отношений сравнимости по модулю, полученных посредством перестановки возможных простых чисел классов и возможных остатков классов для генерации возможного секрета, и
проверяют возможный секрет, декодируя заданный зашифрованный текст и проверяя результат относительно соответствия известному открытому тексту,
причем:
если результирующий открытый текст соответствует известному открытому тексту, то загружают программный продукт на второй компьютерной системе, и
если результирующий открытый текст не соответствует известному открытому тексту, то препятствуют загрузке программного продукта на второй компьютерной системе.
27. Машиночитаемый носитель по п.26, в котором этап генерации простых чисел экземпляров содержит ввод идентифицирующей строки, которая представляет каждый отдельный экземпляр компонента, в функцию f(x) генерации простых чисел, где x - идентифицирующая строка, имеющая длину до приблизительно 65 000 символов.
28. Машиночитаемый носитель по п.27, в котором f(x) генерирует положительное простое число, имеющее значение большее, чем 2t, где t - целое число в пределах от приблизительно 32 до приблизительно 2048.
29. Вычислительная система, содержащая по меньшей мере один модуль приложения, пригодный для использования в этой вычислительной системе, причем упомянутый по меньшей мере один модуль приложения содержит код приложения для выполнения способа генерации сильнозащищенных идентификационных данных аппаратных средств (SHWID) для первой компьютерной системы, имеющей первую аппаратную конфигурацию, при этом способ содержит этапы, на которых:
идентифицируют каждый класс компонентов в пределах первой аппаратной конфигурации, причем количество классов компонентов равно n,
определяют произведение cp класса для каждого класса компонентов,
определяют неполный секрет Pp для каждого класса компонентов, и
суммируют произведение cp класса и неполный секрет Pp для каждого класса компонентов для формирования n сильнозащищенных идентификаторов классов,
причем n сильнозащищенных идентификаторов классов в комбинации формируют сильнозащищенные идентификационные данные аппаратных средств (SHWID) первой компьютерной системы.
30. Вычислительная система по п.29, в которой n - целое число до приблизительно 16.
31. Вычислительная система по п.29, в которой произведение cp класса для каждого класса компонентов определяют с помощью следующих этапов, на которых:
выбирают определенное количество n классов компонентов,
идентифицируют эти n классов компонентов,
идентифицируют все экземпляры в пределах каждого класса компонентов,
назначают идентифицирующую строку для каждого экземпляра компонента,
генерируют простое число рp,q экземпляра для каждого экземпляра компонента, причем каждое простое число экземпляра - положительное простое число, и p представляет номер заданного класса компонентов в пределах от 1 до n, и q представляет q-й тип компонента в пределах первой аппаратной конфигурации, и
перемножают простые числа экземпляров в пределах каждого класса компонентов для формирования произведения cp класса для каждого класса компонентов.
32. Вычислительная система по п.31, в которой этап генерации простых чисел экземпляров содержит ввод идентифицирующей строки для каждого экземпляра компонента в функцию f(x) генерации простых чисел, где x - идентифицирующая строка, имеющая длину до приблизительно 65 000 символов.
33. Вычислительная система по п.32, в которой f(x) генерирует положительное простое число, имеющее значение большее, чем 2t, где t - целое число в пределах от приблизительно 32 до приблизительно 2048.
34. Вычислительная система по п.29, в которой неполный секрет Pp для каждого класса компонентов определяют с помощью следующих этапов, на которых:
генерируют случайное число rp для каждого класса компонентов,
генерируют простое число pp класса для каждого класса компонентов, причем каждое простое число класса - положительное простое число,
выбирают требуемое количество m совпадений классов компонентов, причем m меньше или равно n,
определяют N, где N равно произведению m наименьших простых чисел pp классов,
определяют M, где М равно произведению (m-1) наибольших простых чисел pp классов, и М меньше N,
выбирают секретное число S, где M <S <N,
определяют остаток dp класса для каждого класса компонентов, причем dp равен [S (mod pp)],
формируют первое двоичное значение для каждого класса компонентов, причем первое двоичное значение - простое число pp класса для каждого класса, закодированное в первое двоичное число, имеющее до u битов, где u меньше t, и как u, так и t меньше, чем приблизительно 2048,
формируют второе двоичное значение для каждого класса компонентов, причем второе двоичное значение - остаток dp класса для каждого класса, закодированный во второе двоичное число, имеющее до v битов, где v меньше t, и (u+v=t), и
соединяют первое двоичное значение и второе двоичное значение для формирования неполного секрета Pp для каждого класса компонентов, имеющего общее количество битов, равное t.
35. Вычислительная система по п.34, в которой каждое случайное число rp генерируют, используя генератор случайных чисел, и оно имеет значение в пределах от 0 до меньше, чем 2u.
36. Вычислительная система по п.34, в которой этап генерации простого pp числа класса для каждого класса компонентов содержит ввод случайного числа для каждого класса компонентов в функцию g(x) генерации простых чисел, где x - случайное число, имеющее длину до приблизительно 65 000 символов.
37. Вычислительная система по п.36, в которой g(x) генерирует положительное простое число, имеющее значение в пределах от больше, чем 2 до меньше, чем 2v.
38. Вычислительная система по п.29, в которой упомянутый способ инициируют во время этапа загрузки программного продукта на первой компьютерной системе.
39. Вычислительная система, содержащая по меньшей мере один модуль приложения, пригодный для использования в этой вычислительной системе, причем упомянутый по меньшей мере один модуль приложения содержит код приложения для выполнения способа определения того, может ли данный программный продукт использоваться во второй компьютерной системе, имеющей вторую аппаратную конфигурацию, причем вторая компьютерная система идентична или отличается от первой компьютерной системы, при этом способ содержит этапы, на которых:
идентифицируют n классов компонентов, использовавшихся для определения сильнозащищенных идентификационных данных аппаратных средств (SHWID), сгенерированных способом по п.29,
идентифицируют все экземпляры в пределах каждого класса компонентов второй аппаратной конфигурации,
воссоздают идентифицирующую строку, которая представляет каждый отдельный экземпляр компонента,
генерируют простое число ip,q экземпляра для каждого экземпляра компонента, причем каждое простое число экземпляра - положительное простое число, и p представляет номер заданного класса компонентов в пределах от 1 до n, и q представляет q-тый тип компонента в пределах первой аппаратной конфигурации или второй аппаратной конфигурации,
воссоздают возможные неполные секреты Pp,q классов, причем:
Pp,q=[Cp (mod ip,q)],
извлекают возможные простые числа pp,q классов и возможные остатки dp,q классов из возможных неполных секретов Pp,q классов,
решают набор отношений сравнимости по модулю, полученных посредством перестановки возможных простых чисел классов и возможных остатков классов, для генерации возможного секрета, и
проверяют возможный секрет, декодируя заданный зашифрованный текст и проверяя его по отношению к соответствующему известному открытому тексту,
причем:
если результирующий открытый текст соответствует известному открытому тексту, то загружают программный продукт на второй компьютерной системе, и
если результирующий открытый текст не соответствует известному открытому тексту, то препятствуют загрузке программного продукта на второй компьютерной системе.
40. Вычислительная система по п.39, в которой этап генерации простых чисел экземпляров содержит ввод идентифицирующей строки, которая представляет каждый отдельный экземпляр компонента, в функцию f(x) генерации простых чисел, где x - идентифицирующая строка, имеющая длину до приблизительно 65 000 символов.
41. Вычислительная система по п.40, в которой g(x) генерирует положительное простое число, имеющее значение большее, чем 2t, где t - целое число в пределах от приблизительно 32 до приблизительно 2048.
RU2004106183/09A 2003-03-03 2004-03-02 Система для связывания секретов с компьютерной системой, имеющей некоторый допуск на аппаратные изменения RU2348968C2 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/378,224 2003-03-03
US10/378,224 US7296294B2 (en) 2003-03-03 2003-03-03 System for binding secrets to a computer system having tolerance for hardware changes

Publications (2)

Publication Number Publication Date
RU2004106183A true RU2004106183A (ru) 2005-08-10
RU2348968C2 RU2348968C2 (ru) 2009-03-10

Family

ID=32824752

Family Applications (1)

Application Number Title Priority Date Filing Date
RU2004106183/09A RU2348968C2 (ru) 2003-03-03 2004-03-02 Система для связывания секретов с компьютерной системой, имеющей некоторый допуск на аппаратные изменения

Country Status (19)

Country Link
US (2) US7296294B2 (ru)
EP (1) EP1455257B1 (ru)
JP (1) JP4599069B2 (ru)
KR (1) KR101036701B1 (ru)
CN (1) CN100416445C (ru)
AT (1) ATE306101T1 (ru)
AU (1) AU2004200683B2 (ru)
BR (1) BRPI0400380A (ru)
CA (1) CA2459217A1 (ru)
DE (1) DE602004000106T8 (ru)
DK (1) DK1455257T3 (ru)
ES (1) ES2250932T3 (ru)
HK (1) HK1068697A1 (ru)
MX (1) MXPA04002024A (ru)
MY (1) MY134635A (ru)
PL (1) PL1455257T3 (ru)
RU (1) RU2348968C2 (ru)
TW (1) TWI319544B (ru)
ZA (1) ZA200401493B (ru)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050027657A1 (en) * 2003-08-01 2005-02-03 Yuri Leontiev Distinguishing legitimate hardware upgrades from unauthorized installations of software on additional computers
JP4699099B2 (ja) * 2005-06-14 2011-06-08 富士通株式会社 通信制御装置および通信制御方法
FR2912529A1 (fr) * 2007-02-13 2008-08-15 France Telecom Couplage d'un programme informatique ou de donnees a un systeme de reference et verification associee.
US8620818B2 (en) * 2007-06-25 2013-12-31 Microsoft Corporation Activation system architecture
US20090119744A1 (en) * 2007-11-01 2009-05-07 Microsoft Corporation Device component roll back protection scheme
US9047458B2 (en) 2009-06-19 2015-06-02 Deviceauthority, Inc. Network access protection
US9047450B2 (en) * 2009-06-19 2015-06-02 Deviceauthority, Inc. Identification of embedded system devices
US20100332319A1 (en) * 2009-06-24 2010-12-30 Craig Stephen Etchegoyen Methods and Systems for Dynamic Serving of Advertisements in a Game or Virtual Reality Environment
US9495190B2 (en) * 2009-08-24 2016-11-15 Microsoft Technology Licensing, Llc Entropy pools for virtual machines
US8726407B2 (en) * 2009-10-16 2014-05-13 Deviceauthority, Inc. Authentication of computing and communications hardware
CN103797490B (zh) * 2011-03-15 2017-04-26 爱迪德技术有限公司 在使用秘密共享方案的计算环境中生成用于资产集合的标识符的容忍变化方法
CN103814355B (zh) * 2011-03-15 2017-11-28 爱迪德技术有限公司 使用误差‑校正编码方案在计算环境中生成用于资产集合的标识符的容忍变化方法
AU2011101295B4 (en) 2011-06-13 2012-08-02 Device Authority Ltd Hardware identity in multi-factor authentication layer
AU2011101297B4 (en) 2011-08-15 2012-06-14 Uniloc Usa, Inc. Remote recognition of an association between remote devices
US9143496B2 (en) 2013-03-13 2015-09-22 Uniloc Luxembourg S.A. Device authentication using device environment information
US9286466B2 (en) 2013-03-15 2016-03-15 Uniloc Luxembourg S.A. Registration and authentication of computing devices using a digital skeleton key
US11093656B2 (en) * 2018-11-14 2021-08-17 Irdeto B.V. Change-tolerant method of generating an identifier for a collection of assets in a computing environment
CN114761940A (zh) * 2019-08-28 2022-07-15 斯巴达系统公司 用于生成电子数据记录的审计跟踪的方法、设备和计算机可读介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4796220A (en) * 1986-12-15 1989-01-03 Pride Software Development Corp. Method of controlling the copying of software
US5113518A (en) 1988-06-03 1992-05-12 Durst Jr Robert T Method and system for preventing unauthorized use of software
US5182770A (en) 1991-04-19 1993-01-26 Geza Medveczky System and apparatus for protecting computer software
US5870543A (en) * 1995-06-07 1999-02-09 Digital River, Inc. System for preventing unauthorized copying of active software
US5826011A (en) * 1995-12-26 1998-10-20 Rainbow Technologies, Inc. Method of metering and protecting computer software
US5790783A (en) 1996-03-28 1998-08-04 Advanced Micro Devices, Inc. Method and apparatus for upgrading the software lock of microprocessor
EP0881557B1 (en) * 1997-05-28 2003-04-16 Siemens Aktiengesellschaft Computer system for protecting software and a method for protecting software
US6134659A (en) * 1998-01-07 2000-10-17 Sprong; Katherine A. Controlled usage software
US7503072B2 (en) 1998-04-29 2009-03-10 Microsoft Corporation Hardware ID to prevent software piracy
US6243468B1 (en) 1998-04-29 2001-06-05 Microsoft Corporation Software anti-piracy system that adapts to hardware upgrades
US20040107368A1 (en) * 1998-06-04 2004-06-03 Z4 Technologies, Inc. Method for digital rights management including self activating/self authentication software
CA2310032A1 (en) 2000-06-09 2001-12-09 Andre J. Brisson Big soft brother
JP3840399B2 (ja) 2000-12-05 2006-11-01 健太 堀 ソフトウエアの不正利用防止方法及びプログラム並びに記憶媒体

Also Published As

Publication number Publication date
JP4599069B2 (ja) 2010-12-15
US20080098482A1 (en) 2008-04-24
MXPA04002024A (es) 2005-02-17
EP1455257A1 (en) 2004-09-08
DE602004000106T8 (de) 2006-06-08
CN100416445C (zh) 2008-09-03
KR20040078593A (ko) 2004-09-10
BRPI0400380A (pt) 2005-01-04
ATE306101T1 (de) 2005-10-15
US7296294B2 (en) 2007-11-13
EP1455257B1 (en) 2005-10-05
TW200422945A (en) 2004-11-01
TWI319544B (en) 2010-01-11
JP2004266841A (ja) 2004-09-24
US20040177255A1 (en) 2004-09-09
US7647640B2 (en) 2010-01-12
ZA200401493B (en) 2005-04-19
CA2459217A1 (en) 2004-09-03
DE602004000106D1 (de) 2006-02-16
HK1068697A1 (en) 2005-04-29
RU2348968C2 (ru) 2009-03-10
DE602004000106T2 (de) 2006-03-23
CN1542583A (zh) 2004-11-03
AU2004200683B2 (en) 2009-08-13
AU2004200683A1 (en) 2004-09-23
MY134635A (en) 2007-12-31
ES2250932T3 (es) 2006-04-16
KR101036701B1 (ko) 2011-05-24
PL1455257T3 (pl) 2006-03-31
DK1455257T3 (da) 2006-02-06

Similar Documents

Publication Publication Date Title
RU2004106183A (ru) Система для связывания секретов с компьютерной системой, имеющей некоторый допуск на аппаратные изменения
KR101772002B1 (ko) 통계적 프로세싱
US7769165B2 (en) Semi-public white-box cipher
US8649509B2 (en) Systems and computer program products for generating and verifying randomized hash values
EP1912148A1 (en) Protection against side channel attacks with an integrity check
CN101421792B (zh) 半导体器件标识符产生方法以及半导体器件
KR101091246B1 (ko) 간단하고 효율적인 원패스 인증 암호화 방법
US9298947B2 (en) Method for protecting the integrity of a fixed-length data structure
CN110663215B (zh) 在白盒场景中的椭圆曲线点乘设备和方法
CN105721390A (zh) 一种加密存储方法和装置
EP1190294A1 (en) Robust random number generator
EP2362314A1 (en) Method and apparatus for verifying the integrity of software code during execution and apparatus for generating such software code
KR101942030B1 (ko) 메시지에 대한 무결성 검증이 지원되는 부호 기반의 암호화가 가능한 전자 장치 및 그 동작 방법
US20110274271A1 (en) Countermeasure method and devices for asymmetric encryption
Molland et al. An improved correlation attack against irregular clocked and filtered keystream generators
CN112887096B (zh) 用于签名和密钥交换的素数阶椭圆曲线生成方法及系统
RU2710310C2 (ru) Электронное устройство формирования
CN114422209B (zh) 一种数据处理的方法、装置及存储介质
Huang et al. Some weak points of one fast cryptographic checksum algorithm and its improvement
CN114329614A (zh) 一种基于字符串混淆的数据脱敏方法及系统
CN112784292A (zh) 一种配置文件的处理方法和装置
Sagar Cryptographic Hashing Functions-MD5
US7529365B2 (en) Device and method of applying check bit to encrypt instruction for protection
KR101984297B1 (ko) 메시지 인코딩 방법, 메시지 암호화 방법 및 장치
Chen et al. A Complete Divide and conquer attack on the Alpha1 stream cipher

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20090303

NF4A Reinstatement of patent

Effective date: 20100520

MM4A The patent is invalid due to non-payment of fees

Effective date: 20130303