WIPO logo
Mobile | Deutsch | Español | Français | 日本語 | 한국어 | Português | Русский | 中文 | العربية |
PATENTSCOPE

Search International and National Patent Collections
World Intellectual Property Organization
Search
 
Browse
 
Translate
 
Options
 
News
 
Login
 
Help
 
Machine translation
1. (WO2008101340) SYSTEM AND METHOD FOR INTERLOCKING TO PROTECT SOFTWARE-MEDIATED PROGRAM AND DEVICE BEHAVIOURS
Latest bibliographic data on file with the International Bureau   

Pub. No.:    WO/2008/101340    International Application No.:    PCT/CA2008/000331
Publication Date: 28.08.2008 International Filing Date: 21.02.2008
IPC:
G06F 21/22 (2006.01), G06F 9/45 (2006.01)
Applicants: CLOAKWARE CORPORATION [CA/CA]; 84 Hines Road, Suite 300, Ottawa, Ontario K2K 3G3 (CA) (For All Designated States Except US).
JOHNSON, Harold Joseph [CA/CA]; (CA) (For US Only).
GU, Yuan Xiang [CA/CA]; (CA) (For US Only).
ZHOU, Yongxin [CA/US]; (US) (For US Only)
Inventors: JOHNSON, Harold Joseph; (CA).
GU, Yuan Xiang; (CA).
ZHOU, Yongxin; (US)
Agent: MEASURES, Jeffrey, M.; Borden Ladner Gervais LLP, World Exchange Plaza, 100 Queen Street, Suite 1100, Ottawa, Ontario K1P 1J9 (CA)
Priority Data:
11/709,654 23.02.2007 US
11/980,392 31.10.2007 US
Title (EN) SYSTEM AND METHOD FOR INTERLOCKING TO PROTECT SOFTWARE-MEDIATED PROGRAM AND DEVICE BEHAVIOURS
(FR) SYSTÈME ET PROCÉDÉ DE VERROUILLAGE AFIN DE PROTÉGER LES COMPORTEMENTS MÉDIÉS PAR LOGICIEL DE DISPOSITIFS ET DE PROGRAMMES
Abstract: front page image
(EN)A method for rendering software resistant to reverse engineering. Replace at least one first constant (mathematical expression, etc.) in a computational expression with a second mixed mathematical and bitwise-Boolean expression, the first constant being simpler than the second expression and the second expression being based on the value or the variables found in the first constant (or expression). Evaluation of the second mixed mathematical and bitwise-Boolean expression produces a value preserving the value of the first constant, either: with the original value of the first constant or the original value of the result of the first expression, in which case the second mixed mathematical and bitwise-Boolean expression is obtained from the first constant by converting the first constant by mathematical identities; or, in an encoded form, as a new value, which can be converted back to the original value of the first constant by applying an information-preserving decoding function, in which case the second mixed mathematical and bitwise-Boolean expression is obtained from the first constant by modifying the first constant by a combination of conversion according to mathematical identities and transformation according to an information preserving encoding function.
(FR)L'invention concerne un procédé pour rendre un logiciel résistant à une ingénierie inverse. Le remplacement d'au moins une première constante (expression mathématique, etc.) dans une expression de calcul par une seconde expression mixte mathématique et booléenne sur les bits, la première constante étant plus simple que la seconde expression et la seconde expression étant basée sur la valeur ou les variables trouvées dans la première constante (ou expression). Une évaluation de la seconde expression mixte mathématique et booléenne sur les bits produit une valeur préservant la valeur de la première constante, soit: avec la valeur originale de la première constante ou la valeur d'origine du résultat de la première expression, auquel cas la seconde expression mixte mathématique et booléenne sur les bits est obtenue à partir de la première constante par conversion de la première constante au moyen d'identités mathématiques; ou sous une forme codée, sous forme d'une nouvelle valeur, qui peut être reconvertie dans la valeur d'origine de la première constante par application d'une fonction de décodage préservant l'information, auquel cas la seconde expression mixte mathématique et booléenne sur les bits est obtenue à partir de la première constante par modification de la première constante par combinaison d'une conversion en fonction des identités mathématiques et d'une transformation en fonction d'une fonction de codage préservant l'information.
Designated States: AE, AG, AL, AM, AO, AT, AU, AZ, BA, BB, BG, BH, BR, BW, BY, BZ, CA, CH, CN, CO, CR, CU, CZ, DE, DK, DM, DO, DZ, EC, EE, EG, ES, FI, GB, GD, GE, GH, GM, GT, HN, HR, HU, ID, IL, IN, IS, JP, KE, KG, KM, KN, KP, KR, KZ, LA, LC, LK, LR, LS, LT, LU, LY, MA, MD, ME, MG, MK, MN, MW, MX, MY, MZ, NA, NG, NI, NO, NZ, OM, PG, PH, PL, PT, RO, RS, RU, SC, SD, SE, SG, SK, SL, SM, SV, SY, TJ, TM, TN, TR, TT, TZ, UA, UG, US, UZ, VC, VN, ZA, ZM, ZW.
African Regional Intellectual Property Organization (BW, GH, GM, KE, LS, MW, MZ, NA, SD, SL, SZ, TZ, UG, ZM, ZW)
Eurasian Patent Organization (AM, AZ, BY, KG, KZ, MD, RU, TJ, TM)
European Patent Office (AT, BE, BG, CH, CY, CZ, DE, DK, EE, ES, FI, FR, GB, GR, HR, HU, IE, IS, IT, LT, LU, LV, MC, MT, NL, NO, PL, PT, RO, SE, SI, SK, TR)
African Intellectual Property Organization (BF, BJ, CF, CG, CI, CM, GA, GN, GQ, GW, ML, MR, NE, SN, TD, TG).
Publication Language: English (EN)
Filing Language: English (EN)