亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? rsaref.txt

?? 利用c++的 文件加密設計 可以運行 但是沒有詳細的 說明
?? TXT
?? 第 1 頁 / 共 4 頁
字號:
                 RSAREF(TM): A Cryptographic Toolkit                       Library Reference Manual                           RSA Laboratories                            March 21, 1994                             Version 2.0    Copyright (C) 1991-4 RSA Laboratories, a division of RSA Data                 Security, Inc. All rights reserved.1. INTRODUCTIONThis manual is a reference guide for users of RSAREF, RSALaboratories' portable, educational, reference implementation ofcryptography.RSAREF supports the following algorithms:     o    RSA encryption and key generation [1], as defined by RSA          Laboratories' Public-Key Cryptography Standards (PKCS) [2]     o    MD2 and MD5 message digests [3,4]     o    DES (Data Encryption Standard) in cipher-block chaining mode          [5,6]     o    Diffie-Hellman key agreement [7], as defined by PKCS #3 [8]     o    DESX, RSA Data Security's efficient, secure DES enhancement     o    Triple-DES, for added security with three DES operationsRSAREF is written entirely in C. Its application interface includesthe following routines:         R_SignInit,     computes a digital signature on data of       R_SignUpdate,       arbitrary length, processing in parts     and R_SignFinal       R_VerifyInit,     verifies a digital signature, processing in     R_VerifyUpdate,       parts   and R_VerifyFinal         R_SealInit,     creates a digital envelope on data of       R_SealUpdate,       arbitrary length, processing in parts     and R_SealFinal         R_OpenInit,     opens a digital envelope, processing in       R_OpenUpdate,       parts     and R_OpenFinal       R_DigestInit,     digests data of arbitrary length, processing     R_DigestUpdate,       in parts   and R_DigestFinal    R_EncodePEMBlock     encodes a message in printable ASCII                           according to RFC 1421 [9]    R_DecodePEMBlock     decodes a message encoded according to RFC                           1421   R_GeneratePEMKeys     generates an RSA public/private key pair        R_RandomInit     initializes a random structure      R_RandomUpdate     mixes bytes into a random structureR_GetRandomBytesNeeded   computes the number of mix-in bytes still                           needed to seed a random structure       R_RandomFinal     zeroizes a random structure  R_GenerateDHParams     generates Diffie-Hellman parameters  R_SetupDHAgreement     sets up a key agreement R_ComputeDHAgreedKey    computes the agreed-upon keyAn Internet Privacy-Enhanced Mail [9-12] implementation can be builtdirectly on top of these routines, together with message parsing andformatting routines and certificate-management routines.Implementations of PKCS #7 and #10 [13,14] can be built in a similarmanner. Other secure applications can be built on top of theDiffie-Hellman routines.The following routines are supported for backward compatibility withRSAREF 1.0:      R_SignPEMBlock     computes a digital signature on a message         R_SignBlock     computes a digital signature on a block of                           data such as a certificateR_VerifyPEMSignature     verifies a digital signature on a messageR_VerifyBlockSignature   verifies a digital signature on a block of                           data such as a certificate      R_SealPEMBlock     computes a digital signature and encrypts a                           message      R_OpenPEMBlock     decrypts an encrypted message and verifies a                           digital signature       R_DigestBlock     computes the message digest of a messageThis manual is divided into eight sections and three appendices.This section introduces RSAREF. The next six sections explain RSAREFprocedures: random structures; cryptographic enhancements; printableASCII encoding and decoding; key-pair generation; Diffie-Hellman keyagreement; and version 1.0 routines. The last section documents theplatform-specific run-time library.Appendix A lists RSAREF error types. Appendix B lists RSAREF typesand constants. Appendix C lists platform-specific types andconstants.2. RANDOM STRUCTURESA random structure contains a seed from which a pseudorandom sequenceof bytes is derived. RSAREF generates keys and pads RSA encryptionblocks with bytes derived from a random structure.Random structures are used by both message-processing andkey-generation applications.RSAREF sets up a random structure with the procedure R_RandomInit. Atypical application calls R_RandomInit on entry.A new random structure is not ready for use until it is seeded bymixing in some random bytes. RSAREF seeds a random structure with theprocedure R_RandomUpdate and R_GetRandomBytesNeeded. A randomstructure is considered seeded when the number of bytes still neededreaches zero. More bytes can be mixed in after the random structureis seeded. A typical application calls R_GetRandomBytesNeeded andR_RandomUpdate immediately after calling R_RandomInit.RSAREF zeroizes a random structure with the procedure R_RandomFinal.A typical application calls R_RandomFinal on exit.R_RandomInitint R_RandomInit (  R_RANDOM_STRUCT *randomStruct             /* new random structure */);R_RandomInit sets up a new random structure.Return value:      0     success             nonzero     reserved for future compatibilityR_RandomUpdateint R_RandomUpdate (  R_RANDOM_STRUCT *randomStruct,                /* random structure */  unsigned char *block,                /* block of values to mix in */  unsigned int blockLen                          /* length of block */);R_RandomUpdate mixes blockLen bytes from block into randomStruct.Return value:      0     success             nonzero     reserved for future compatibilityR_GetRandomBytesNeededint R_GetRandomBytesNeeded (  unsigned int *bytesNeeded,       /* number of mix-in bytes needed */  R_RANDOM_STRUCT *randomStruct                 /* random structure */);R_GetRandomBytesNeeded computes the number of mix-in bytes stillneeded to seed randomStruct, storing the result in bytesNeeded.Return value:      0     success             nonzero     reserved for future compatibilityR_RandomFinalvoid R_RandomFinal (  R_RANDOM_STRUCT *randomStruct                 /* random structure */);R_RandomFinal zeroizes randomStruct.No return value.3. CRYPTOGRAPHIC ENHANCEMENTSRSAREF's cryptographic enhancements fall into five groups: signingdata; verifying signatures; sealing data in digital envelopes;opening digital envelopes; and digesting data.All the procedures process data in parts; it is not necessary for alldata to be stored in memory at once.3.1 Signing dataRSAREF signs data with three procedures: R_SignInit, R_SignUpdate,and R_SignFinal. These procedures are typically called bymessage-processing applications, by key-generation applications whenconstructing a PEM or PKCS certification request, and bycertification applications when signing a certificate.An application first calls R_SignInit, giving an integer specifyingwhich message-digest algorithm to apply (see Appendix D). R_SignInitsets up a context for the signature operation, and returns thecontext.The application then calls R_SignUpdate any number of times, givingthe context and the next data part. R_SignUpdate digests the part.After all the parts are supplied, the application calls R_SignFinal,giving the context and the signer's RSA private key. R_SignFinalencrypts the message digest with the private key and returns theresult, which is the signature.An application may call R_SignUpdate again after R_SignFinal tosign other data, without setting up a new context.R_SignInitint R_SignInit (  R_SIGNATURE_CTX *context,                          /* new context */  int digestAlgorithm                   /* message-digest algorithm */);R_SignInit begins a signature operation, setting up a new context.digestAlgorithm is the algorithm with which data are digested, andmust be one of the values listed in Appendix D.Return value:      0     success RE_DIGEST_ALGORITHM     digestAlgorithm is invalidR_SignUpdateint R_SignUpdate (  R_SIGNATURE_CTX *context,                              /* context */  unsigned char *partIn,                          /* next data part */  unsigned char partInLen               /* length of next data part */);R_SignUpdate continues a signature operation, digesting partIn, thenext data part, with the specified message-digest algorithm. It maybe called any number of times.Return value:      0     successR_SignFinalint R_SignFinal (  R_SIGNATURE_CTX *context,                              /* context */  unsigned char *signature,                            /* signature */  unsigned int *signatureLen,                /* length of signature */  R_RSA_PRIVATE_KEY *privateKey         /* signer's RSA private key */);R_SignFinal completes a signature operation, encrypting the messagedigest with the signer's private key. It stores the resultingsignature in signature and its length in signatureLen.signatureLen will not be greater than MAX_SIGNATURE_LEN.Return value:      0     success      RE_PRIVATE_KEY     privateKey cannot encrypt message digest3.2 Verifying a signatureRSAREF verifies signatures with three procedures: R_VerifyInit,R_VerifyUpdate, and R_VerifyFinal. These procedures are typicallycalled by message-processing applications and by certificationapplications when processing a certification request.An application first calls R_VerifyInit, giving an integer specifyingwhich message-digest algorithm to apply (see Appendix D).R_VerifyInit sets up a context for the verification operation, andreturns the context.The application then calls R_VerifyUpdate any number of times, givingthe context and the next data part. R_VerifyUpdate digests the part.After all the parts are supplied, the application callsR_VerifyFinal, giving the context, the signer's RSA public key, andthe signature. R_SignFinal decrypts the signature with the public keyand compares the result to the message digest to see whether thesignature is valid.An application may call R_VerifyUpdate again after R_VerifyFinal toverify other signatures, without setting up a new context.R_VerifyInitint R_VerifyInit (  R_SIGNATURE_CTX *context,                          /* new context */  int digestAlgorithm                   /* message-digest algorithm */);R_VerifyInit begins a verification operation, setting up a newcontext.digestAlgorithm is the algorithm with which data are digested, andmust be one of the values listed in Appendix D.Return value:      0     success RE_DIGEST_ALGORITHM     digestAlgorithm is invalidR_VerifyUpdateint R_VerifyUpdate (  R_SIGNATURE_CTX *context,                              /* context */  unsigned char *partIn,                          /* next data part */  unsigned int partInLen                /* length of next data part */);R_VerifyUpdate continues a verification operation, digesting partIn,the next data part, with the specified message-digest algorithm. Itmay be called any number of times.Return value:      0     successR_VerifyFinalint R_VerifyFinal (  R_SIGNATURE_CTX *context,                              /* context */  unsigned char *signature,                            /* signature */  unsigned int signatureLen,                 /* length of signature */  R_RSA_PUBLIC_KEY *publicKey            /* signer's RSA public key */);R_VerifyFinal completes a verification operation, decrypting thesignature with the signer's public key and comparing it to themessage digest.signatureLen must not be greater than MAX_SIGNATURE_LEN.Return value:      0     success              RE_LEN     signatureLen out of range       RE_PUBLIC_KEY     publicKey cannot decrypt signature        RE_SIGNATURE     signature is incorrect3.3 Sealing data in a digital envelopeRSAREF seals data in digital envelopes with three procedures:R_SealInit, R_SealUpdate, and R_SealFinal. There may be any number ofrecipients. These procedures are typically called bymessage-processing applications.An application first calls R_SealInit, giving an integer specifyingwhich data encryption algorithm to apply (see Appendix D), the publickey of each recipient, and a random structure. R_SealInit sets up acontext for the sealing operation, generates a data encryption keyand an initialization vector, and encrypts the data encryption keywith each recipient's public key.  It returns the context, theinitialization vector, and the encrypted data encryption keys.The application then calls R_SealUpdate any number of times, givingthe context and the next data part. R_SealUpdate encrypts the partand returns the next encrypted data part. (Depending on how data aresupplied, it may return more or less data than are supplied.)After all the parts are supplied, the application calls R_SealFinal,giving the context. R_SealFinal returns the last encrypted data part.An application may call R_SealUpdate again after R_SealFinal toencrypt other data under the same data encryption key andinitialization vector. This is useful when message content is signedand encrypted, and the digital signature must also be encrypted.R_SealInitint R_SealInit (  R_ENVELOPE_CTX *context,                                /* new context */  unsigned char **encryptedKeys,                       /* encrypted keys */  unsigned int *encryptedKeyLens,           /* lengths of encrypted keys */  unsigned char iv[8],                          /* initialization vector */  unsigned int publicKeyCount,                  /* number of public keys */  R_RSA_PUBLIC_KEY **publicKeys,                          /* public keys */  int encryptionAlgorithm,                  /* data encryption algorithm */  R_RANDOM_STRUCT *randomStruct                      /* random structure */);R_SealInit begins a "sealing" operation. It performs the followingsteps:    1.   It sets up a new context.    2.   It generates a random data encryption key and initialization         vector, storing the initialization vector in iv.    3.   It encrypts the data encryption key with each recipient's         public key, storing the encrypted keys in encryptedKeys and

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
99久久精品国产一区| 久久se精品一区精品二区| av电影在线观看一区| 洋洋av久久久久久久一区| 欧美一区二区精品久久911| 蜜桃av一区二区三区| 国产午夜精品理论片a级大结局| av男人天堂一区| 成人午夜视频网站| 九色porny丨国产精品| 国产精品不卡在线| 日韩欧美在线网站| 在线免费观看成人短视频| 国产精品影音先锋| 日本不卡123| 亚洲福利国产精品| 亚洲日本一区二区| 久久婷婷色综合| 91精品婷婷国产综合久久性色| 成人性生交大片免费看在线播放| 成人免费视频一区| 色哟哟一区二区三区| 成人av在线资源| 国产一区二区三区在线观看免费视频 | 国产精品视频线看| 日韩午夜激情电影| 精品88久久久久88久久久| 欧美一区二区三区小说| 国产亚洲精品资源在线26u| 亚洲人成小说网站色在线| 欧美国产欧美综合| 国产亚洲一区二区在线观看| 国产精品成人一区二区艾草| 午夜精品久久久久久久久久久 | 国产乱子伦一区二区三区国色天香| 国产成人午夜99999| 国产精品影视网| 欧亚一区二区三区| 久久老女人爱爱| 国产日韩欧美精品电影三级在线| 精品国产sm最大网站| 亚洲欧洲精品天堂一级| 亚洲色图第一区| 精品系列免费在线观看| 欧洲精品视频在线观看| 久久精品视频免费观看| 亚洲一区免费在线观看| 日本在线不卡一区| 精品一区二区三区在线播放 | av一区二区不卡| 精品av久久707| 亚洲成人综合视频| 久久精品国产99久久6| 色屁屁一区二区| 中文字幕免费一区| 久久99国产精品久久99| 欧美日韩成人高清| 日韩午夜激情av| 亚洲一区二区精品久久av| 国产成人av一区二区三区在线观看| 日韩一级高清毛片| 亚洲成人免费在线观看| 欧美色倩网站大全免费| 欧美一区二区三区性视频| 亚洲一卡二卡三卡四卡五卡| 不卡免费追剧大全电视剧网站| 精品国产一区二区三区不卡| 日本美女视频一区二区| 欧美日韩国产电影| 日韩在线一二三区| 成人一区二区在线观看| 精品福利视频一区二区三区| 老汉av免费一区二区三区| 51午夜精品国产| 五月激情丁香一区二区三区| 欧美日韩一区二区三区四区五区| 亚洲国产精品嫩草影院| 精品视频在线视频| 五月激情综合网| 欧美xxxx老人做受| 亚洲一区二区三区激情| 欧美亚一区二区| 国产三级精品三级在线专区| 国产成人亚洲综合a∨猫咪| 久久免费电影网| www.66久久| 夜夜嗨av一区二区三区| 欧美绝品在线观看成人午夜影视| 日本一区二区不卡视频| eeuss鲁片一区二区三区在线看| 国产午夜精品一区二区三区嫩草| 国产精品996| 国产精品久久久久久久蜜臀| 在线视频你懂得一区二区三区| 亚洲国产精品综合小说图片区| 69堂成人精品免费视频| 激情成人综合网| 日韩精品中文字幕在线一区| 亚洲国产日韩综合久久精品| 欧美久久久一区| 久久99精品久久久久婷婷| 中文字幕免费一区| 欧美日韩小视频| 国产一区二区三区最好精华液| 国产精品久久久久久户外露出| 91麻豆视频网站| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆 | 精品一区二区在线播放| 成人免费小视频| 日韩一区二区在线观看| 成人综合在线观看| 日韩高清中文字幕一区| 欧美国产一区二区在线观看| 欧美日韩一卡二卡| 成年人网站91| 日韩高清在线电影| 亚洲蜜臀av乱码久久精品蜜桃| 日韩精品一区二区三区swag | 色域天天综合网| 久久99久久99精品免视看婷婷| 亚洲欧美一区二区三区久本道91 | 91性感美女视频| 国产真实乱对白精彩久久| 亚洲一级二级在线| 国产精品激情偷乱一区二区∴| 日韩一区二区三区av| 色国产精品一区在线观看| 中文字幕制服丝袜成人av| 欧美亚洲一区二区三区四区| 久久精品72免费观看| 亚洲一二三级电影| 亚洲欧美综合网| 久久久久久久精| 精品免费视频一区二区| 欧美视频一区二区三区四区| 成人看片黄a免费看在线| 久久精品久久综合| 亚洲福中文字幕伊人影院| 亚洲乱码一区二区三区在线观看| 在线视频欧美精品| av福利精品导航| 成人综合在线观看| 国产成人精品在线看| 国产乱码字幕精品高清av| 久久疯狂做爰流白浆xx| 日韩和欧美一区二区| 天天操天天色综合| 日日夜夜精品免费视频| 日韩精品亚洲一区| 日韩黄色在线观看| 蜜桃精品在线观看| 激情综合网av| 国产成人免费视频一区| 国产麻豆成人传媒免费观看| 国产剧情一区二区三区| 国产不卡视频一区| 日韩精品电影在线| 日本aⅴ亚洲精品中文乱码| 亚洲高清视频在线| 午夜电影网一区| 老汉av免费一区二区三区 | 成人性视频网站| 成人午夜视频网站| 91一区二区在线| 欧美午夜免费电影| 日韩欧美一卡二卡| 国产婷婷色一区二区三区四区| 亚洲国产岛国毛片在线| 综合久久给合久久狠狠狠97色| 亚洲自拍偷拍麻豆| 日韩精品五月天| 国产精品一区专区| 色婷婷国产精品综合在线观看| 欧美精品自拍偷拍| 久久久久免费观看| 亚洲色图视频网| 美女视频黄免费的久久 | 日韩高清不卡一区| 国产一区二区影院| 色网综合在线观看| 日韩欧美高清一区| 综合久久久久久| 麻豆传媒一区二区三区| 成人av影院在线| 欧美精品1区2区| 中文字幕免费一区| 五月婷婷综合网| 成人高清免费在线播放| 欧美日韩国产成人在线免费| 国产拍欧美日韩视频二区| 亚洲在线成人精品| 国产成人自拍网| 欧美精品精品一区| 亚洲欧洲成人自拍| 久久国产麻豆精品| 在线观看成人小视频| 国产午夜亚洲精品羞羞网站| 天天影视涩香欲综合网| 成人性生交大片免费看视频在线| 欧美一区二区三区日韩|