1 Star 0 Fork 4K

Feng Lin/interface_sdk-js

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
@ohos.security.cert.d.ts 195.94 KB
一键复制 编辑 原始数据 按行查看 历史
王静 提交于 2024-05-13 20:09 +08:00 . 获取证书名称支持中文
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732
/*
* Copyright (c) 2022-2024 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* @file
* @kit DeviceCertificateKit
*/
import type { AsyncCallback } from './@ohos.base';
import cryptoFramework from './@ohos.security.cryptoFramework';
/**
* Provides a series of capabilities related to certificates,
* which supports parsing, verification, and output of certificates, extensions, and CRLs.
*
* @namespace cert
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Provides a series of capabilities related to certificates,
* which supports parsing, verification, and output of certificates, extensions, and CRLs.
*
* @namespace cert
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Provides a series of capabilities related to certificates,
* which supports parsing, verification, and output of certificates, extensions, and CRLs.
*
* @namespace cert
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
declare namespace cert {
/**
* Enum for result code
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Enum for result code
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Enum for result code
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
enum CertResult {
/**
* Indicates that input parameters is invalid.
*
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Indicates that input parameters is invalid.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates that input parameters is invalid.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
INVALID_PARAMS = 401,
/**
* Indicates that function or algorithm is not supported.
*
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Indicates that function or algorithm is not supported.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates that function or algorithm is not supported.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
NOT_SUPPORT = 801,
/**
* Indicates the memory error.
*
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Indicates the memory error.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates the memory error.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
ERR_OUT_OF_MEMORY = 19020001,
/**
* Indicates that runtime error.
*
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Indicates that runtime error.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates that runtime error.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
ERR_RUNTIME_ERROR = 19020002,
/**
* Indicates the crypto operation error.
*
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Indicates the crypto operation error.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates the crypto operation error.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
ERR_CRYPTO_OPERATION = 19030001,
/**
* Indicates that the certificate signature verification failed.
*
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Indicates that the certificate signature verification failed.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates that the certificate signature verification failed.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
ERR_CERT_SIGNATURE_FAILURE = 19030002,
/**
* Indicates that the certificate has not taken effect.
*
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Indicates that the certificate has not taken effect.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates that the certificate has not taken effect.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
ERR_CERT_NOT_YET_VALID = 19030003,
/**
* Indicates that the certificate has expired.
*
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Indicates that the certificate has expired.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates that the certificate has expired.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
ERR_CERT_HAS_EXPIRED = 19030004,
/**
* Indicates a failure to obtain the certificate issuer.
*
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Indicates a failure to obtain the certificate issuer.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates a failure to obtain the certificate issuer.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
ERR_UNABLE_TO_GET_ISSUER_CERT_LOCALLY = 19030005,
/**
* The key cannot be used for signing a certificate.
*
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* The key cannot be used for signing a certificate.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The key cannot be used for signing a certificate.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
ERR_KEYUSAGE_NO_CERTSIGN = 19030006,
/**
* The key cannot be used for digital signature.
*
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* The key cannot be used for digital signature.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The key cannot be used for digital signature.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
ERR_KEYUSAGE_NO_DIGITAL_SIGNATURE = 19030007
}
/**
* Provides the data blob type.
*
* @typedef DataBlob
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Provides the data blob type.
*
* @typedef DataBlob
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Provides the data blob type.
*
* @typedef DataBlob
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface DataBlob {
/**
* Indicates the content of data blob.
*
* @type { Uint8Array }
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Indicates the content of data blob.
*
* @type { Uint8Array }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates the content of data blob.
*
* @type { Uint8Array }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
data: Uint8Array;
}
/**
* Provides the data array type.
*
* @typedef DataArray
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Provides the data array type.
*
* @typedef DataArray
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Provides the data array type.
*
* @typedef DataArray
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface DataArray {
/**
* Indicates the content of data array.
*
* @type { Array<Uint8Array> }
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Indicates the content of data array.
*
* @type { Array<Uint8Array> }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates the content of data array.
*
* @type { Array<Uint8Array> }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
data: Array<Uint8Array>;
}
/**
* Enum for supported cert encoding format.
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Enum for supported cert encoding format.
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Enum for supported cert encoding format.
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
enum EncodingFormat {
/**
* The value of cert DER format.
*
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* The value of cert DER format.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The value of cert DER format.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
FORMAT_DER = 0,
/**
* The value of cert PEM format.
*
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* The value of cert PEM format.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The value of cert PEM format.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
FORMAT_PEM = 1,
/**
* The value of cert chain PKCS7 format.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The value of cert chain PKCS7 format.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
FORMAT_PKCS7 = 2
}
/**
* Enum for the certificate item type.
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Enum for the certificate item type.
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Enum for the certificate item type.
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
enum CertItemType {
/**
* Indicates to get certificate TBS(to be signed) value.
*
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Indicates to get certificate TBS(to be signed) value.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates to get certificate TBS(to be signed) value.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
CERT_ITEM_TYPE_TBS = 0,
/**
* Indicates to get certificate public key.
*
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Indicates to get certificate public key.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates to get certificate public key.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
CERT_ITEM_TYPE_PUBLIC_KEY = 1,
/**
* Indicates to get certificate issuer unique id value.
*
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Indicates to get certificate issuer unique id value.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates to get certificate issuer unique id value.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
CERT_ITEM_TYPE_ISSUER_UNIQUE_ID = 2,
/**
* Indicates to get certificate subject unique id value.
*
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Indicates to get certificate subject unique id value.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates to get certificate subject unique id value.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
CERT_ITEM_TYPE_SUBJECT_UNIQUE_ID = 3,
/**
* Indicates to get certificate extensions value.
*
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Indicates to get certificate extensions value.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates to get certificate extensions value.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
CERT_ITEM_TYPE_EXTENSIONS = 4
}
/**
* Enumerates for the certificate extension object identifier (OID) types.
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Enumerates for the certificate extension object identifier (OID) types.
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Enumerates for the certificate extension object identifier (OID) types.
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
enum ExtensionOidType {
/**
* Indicates to obtain all types of OIDs, including critical and uncritical types.
*
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Indicates to obtain all types of OIDs, including critical and uncritical types.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates to obtain all types of OIDs, including critical and uncritical types.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
EXTENSION_OID_TYPE_ALL = 0,
/**
* Indicates to obtain OIDs of the critical type.
*
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Indicates to obtain OIDs of the critical type.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates to obtain OIDs of the critical type.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
EXTENSION_OID_TYPE_CRITICAL = 1,
/**
* Indicates to obtain OIDs of the uncritical type.
*
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Indicates to obtain OIDs of the uncritical type.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates to obtain OIDs of the uncritical type.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
EXTENSION_OID_TYPE_UNCRITICAL = 2
}
/**
* Enum for the certificate extension entry type.
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Enum for the certificate extension entry type.
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Enum for the certificate extension entry type.
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
enum ExtensionEntryType {
/**
* Indicates to get extension entry.
*
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Indicates to get extension entry.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates to get extension entry.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
EXTENSION_ENTRY_TYPE_ENTRY = 0,
/**
* Indicates to get extension entry critical.
*
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Indicates to get extension entry critical.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates to get extension entry critical.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
EXTENSION_ENTRY_TYPE_ENTRY_CRITICAL = 1,
/**
* Indicates to get extension entry value.
*
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Indicates to get extension entry value.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Indicates to get extension entry value.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
EXTENSION_ENTRY_TYPE_ENTRY_VALUE = 2
}
/**
* Provides the cert encoding blob type.
*
* @typedef EncodingBlob
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Provides the cert encoding blob type.
*
* @typedef EncodingBlob
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Provides the cert encoding blob type.
*
* @typedef EncodingBlob
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface EncodingBlob {
/**
* The data input.
*
* @type { Uint8Array }
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* The data input.
*
* @type { Uint8Array }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The data input.
*
* @type { Uint8Array }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
data: Uint8Array;
/**
* The data encoding format.
*
* @type { EncodingFormat }
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* The data encoding format.
*
* @type { EncodingFormat }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The data encoding format.
*
* @type { EncodingFormat }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
encodingFormat: EncodingFormat;
}
/**
* Provides the cert chain data type.
*
* @typedef CertChainData
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Provides the cert chain data type.
*
* @typedef CertChainData
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Provides the cert chain data type.
*
* @typedef CertChainData
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface CertChainData {
/**
* The data input.
*
* @type { Uint8Array }
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* The data input.
*
* @type { Uint8Array }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The data input.
*
* @type { Uint8Array }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
data: Uint8Array;
/**
* The number of certs.
*
* @type { number }
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* The number of certs.
*
* @type { number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The number of certs.
*
* @type { number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
count: number;
/**
* The data encoding format.
*
* @type { EncodingFormat }
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* The data encoding format.
*
* @type { EncodingFormat }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The data encoding format.
*
* @type { EncodingFormat }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
encodingFormat: EncodingFormat;
}
/**
* Enum for Encoding type.
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
enum EncodingType {
/**
* Indicates to utf8 type.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
ENCODING_UTF8 = 0
}
/**
* Provides the x509 cert type.
*
* @typedef X509Cert
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Provides the x509 cert type.
*
* @typedef X509Cert
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Provides the x509 cert type.
*
* @typedef X509Cert
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface X509Cert {
/**
* Verify the X509 cert.
*
* @param { cryptoFramework.PubKey } key - public key to verify cert.
* @param { AsyncCallback<void> } callback - the callback of verify.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Verify the X509 cert.
*
* @param { cryptoFramework.PubKey } key - public key to verify cert.
* @param { AsyncCallback<void> } callback - the callback of verify.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Verify the X509 cert.
*
* @param { cryptoFramework.PubKey } key - public key to verify cert.
* @param { AsyncCallback<void> } callback - the callback of verify.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
verify(key: cryptoFramework.PubKey, callback: AsyncCallback<void>): void;
/**
* Verify the X509 cert.
*
* @param { cryptoFramework.PubKey } key - public key to verify cert.
* @returns { Promise<void> } the promise returned by the function.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Verify the X509 cert.
*
* @param { cryptoFramework.PubKey } key - public key to verify cert.
* @returns { Promise<void> } the promise returned by the function.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Verify the X509 cert.
*
* @param { cryptoFramework.PubKey } key - public key to verify cert.
* @returns { Promise<void> } the promise returned by the function.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
verify(key: cryptoFramework.PubKey): Promise<void>;
/**
* Get X509 cert encoded data.
*
* @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Get X509 cert encoded data.
*
* @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get X509 cert encoded data.
*
* @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getEncoded(callback: AsyncCallback<EncodingBlob>): void;
/**
* Get X509 cert encoded data.
*
* @returns { Promise<EncodingBlob> } the promise of X509 cert encoded data.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Get X509 cert encoded data.
*
* @returns { Promise<EncodingBlob> } the promise of X509 cert encoded data.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get X509 cert encoded data.
*
* @returns { Promise<EncodingBlob> } the promise of X509 cert encoded data.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getEncoded(): Promise<EncodingBlob>;
/**
* Get X509 cert public key.
*
* @returns { cryptoFramework.PubKey } X509 cert pubKey.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Get X509 cert public key.
*
* @returns { cryptoFramework.PubKey } X509 cert pubKey.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get X509 cert public key.
*
* @returns { cryptoFramework.PubKey } X509 cert pubKey.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getPublicKey(): cryptoFramework.PubKey;
/**
* Check the X509 cert validity with date.
*
* @param { string } date - indicates the cert date.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @throws { BusinessError } 19030003 - the certificate has not taken effect.
* @throws { BusinessError } 19030004 - the certificate has expired.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Check the X509 cert validity with date.
*
* @param { string } date - indicates the cert date.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @throws { BusinessError } 19030003 - the certificate has not taken effect.
* @throws { BusinessError } 19030004 - the certificate has expired.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Check the X509 cert validity with date.
*
* @param { string } date - indicates the cert date.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @throws { BusinessError } 19030003 - the certificate has not taken effect.
* @throws { BusinessError } 19030004 - the certificate has expired.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
checkValidityWithDate(date: string): void;
/**
* Get X509 cert version.
*
* @returns { number } X509 cert version.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Get X509 cert version.
*
* @returns { number } X509 cert version.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get X509 cert version.
*
* @returns { number } X509 cert version.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getVersion(): number;
/**
* Get X509 cert serial number.
*
* @returns { number } X509 cert serial number.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 10
* @useinstead ohos.security.cert.X509Cert.getCertSerialNumber
*/
getSerialNumber(): number;
/**
* Get X509 cert serial number.
*
* @returns { bigint } X509 cert serial number.
* @throws { BusinessError } 19020002 - runtime error.
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Get X509 cert serial number.
*
* @returns { bigint } X509 cert serial number.
* @throws { BusinessError } 19020002 - runtime error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get X509 cert serial number.
*
* @returns { bigint } X509 cert serial number.
* @throws { BusinessError } 19020002 - runtime error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getCertSerialNumber(): bigint;
/**
* Get X509 cert issuer name.
*
* @returns { DataBlob } X509 cert issuer name.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Get X509 cert issuer name.
*
* @returns { DataBlob } X509 cert issuer name.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get X509 cert issuer name.
*
* @returns { DataBlob } X509 cert issuer name.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getIssuerName(): DataBlob;
/**
* Get X509 cert subject name.
*
* @returns { DataBlob } X509 cert subject name.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Get X509 cert subject name.
*
* @returns { DataBlob } X509 cert subject name.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get X509 cert subject name.
*
* @param { EncodingType } [encodingType] indicates the encoding type, if the encoding type parameter is not set,
* the default ASCII encoding is used.
* @returns { DataBlob } X509 cert subject name.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Incorrect parameter types;
* <br>2. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getSubjectName(encodingType?: EncodingType): DataBlob;
/**
* Get X509 cert not before time.
*
* @returns { string } X509 cert not before time.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Get X509 cert not before time.
*
* @returns { string } X509 cert not before time.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get X509 cert not before time.
*
* @returns { string } X509 cert not before time.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getNotBeforeTime(): string;
/**
* Get X509 cert not after time.
*
* @returns { string } X509 cert not after time.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Get X509 cert not after time.
*
* @returns { string } X509 cert not after time.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get X509 cert not after time.
*
* @returns { string } X509 cert not after time.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getNotAfterTime(): string;
/**
* Get X509 cert signature.
*
* @returns { DataBlob } X509 cert signature.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Get X509 cert signature.
*
* @returns { DataBlob } X509 cert signature.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get X509 cert signature.
*
* @returns { DataBlob } X509 cert signature.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getSignature(): DataBlob;
/**
* Get X509 cert signature's algorithm name.
*
* @returns { string } X509 cert signature's algorithm name.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Get X509 cert signature's algorithm name.
*
* @returns { string } X509 cert signature's algorithm name.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get X509 cert signature's algorithm name.
*
* @returns { string } X509 cert signature's algorithm name.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getSignatureAlgName(): string;
/**
* Get X509 cert signature's algorithm oid.
*
* @returns { string } X509 cert signature's algorithm oid.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Get X509 cert signature's algorithm oid.
*
* @returns { string } X509 cert signature's algorithm oid.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get X509 cert signature's algorithm oid.
*
* @returns { string } X509 cert signature's algorithm oid.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getSignatureAlgOid(): string;
/**
* Get X509 cert signature's algorithm name.
*
* @returns { DataBlob } X509 cert signature's algorithm name.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Get X509 cert signature's algorithm name.
*
* @returns { DataBlob } X509 cert signature's algorithm name.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get X509 cert signature's algorithm name.
*
* @returns { DataBlob } X509 cert signature's algorithm name.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getSignatureAlgParams(): DataBlob;
/**
* Get X509 cert key usage.
*
* @returns { DataBlob } X509 cert key usage.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Get X509 cert key usage.
*
* @returns { DataBlob } X509 cert key usage.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get X509 cert key usage.
*
* @returns { DataBlob } X509 cert key usage.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getKeyUsage(): DataBlob;
/**
* Get X509 cert extended key usage.
*
* @returns { DataArray } X509 cert extended key usage.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Get X509 cert extended key usage.
*
* @returns { DataArray } X509 cert extended key usage.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get X509 cert extended key usage.
*
* @returns { DataArray } X509 cert extended key usage.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getExtKeyUsage(): DataArray;
/**
* Get X509 cert basic constraints path len.
*
* @returns { number } X509 cert basic constraints path len.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Get X509 cert basic constraints path len.
*
* @returns { number } X509 cert basic constraints path len.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get X509 cert basic constraints path len.
*
* @returns { number } X509 cert basic constraints path len.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getBasicConstraints(): number;
/**
* Get X509 cert subject alternative name.
*
* @returns { DataArray } X509 cert subject alternative name.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Get X509 cert subject alternative name.
*
* @returns { DataArray } X509 cert subject alternative name.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get X509 cert subject alternative name.
*
* @returns { DataArray } X509 cert subject alternative name.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getSubjectAltNames(): DataArray;
/**
* Get X509 cert issuer alternative name.
*
* @returns { DataArray } X509 cert issuer alternative name.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Get X509 cert issuer alternative name.
*
* @returns { DataArray } X509 cert issuer alternative name.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get X509 cert issuer alternative name.
*
* @returns { DataArray } X509 cert issuer alternative name.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getIssuerAltNames(): DataArray;
/**
* Get certificate item value.
*
* @param { CertItemType } itemType
* @returns { DataBlob } cert item value.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Get certificate item value.
*
* @param { CertItemType } itemType
* @returns { DataBlob } cert item value.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get certificate item value.
*
* @param { CertItemType } itemType
* @returns { DataBlob } cert item value.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getItem(itemType: CertItemType): DataBlob;
/**
* Check the X509 cert if match the parameters.
*
* @param { X509CertMatchParameters } param - indicate the match parameters.
* @returns { boolean } true - match X509Cert, false - not match.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Check the X509 cert if match the parameters.
*
* @param { X509CertMatchParameters } param - indicate the match parameters.
* @returns { boolean } true - match X509Cert, false - not match.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
match(param: X509CertMatchParameters): boolean;
/**
* Obtain CRL distribution points.
*
* @returns { DataArray } X509 cert CRL distribution points.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getCRLDistributionPoint(): DataArray;
/**
* Get X500 distinguished name of the issuer.
*
* @returns { X500DistinguishedName } X500 distinguished name object.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getIssuerX500DistinguishedName(): X500DistinguishedName;
/**
* Get X500 distinguished name of the subject.
*
* @returns { X500DistinguishedName } X500 distinguished name object.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getSubjectX500DistinguishedName(): X500DistinguishedName;
/**
* Get the string type data of the object.
*
* @returns { string } the string type data of the object.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
toString(): string;
/**
* Get the hash value of DER format data.
*
* @returns { Uint8Array } the hash value of DER format data.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
hashCode(): Uint8Array;
/**
* Get the extension der encoding data for the corresponding entity.
*
* @returns { CertExtension } the certExtension object.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getExtensionsObject(): CertExtension;
}
/**
* Provides to create X509 certificate object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicate the input cert data.
* @param { AsyncCallback<X509Cert> } callback - the callback of createX509Cert.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Provides to create X509 certificate object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicate the input cert data.
* @param { AsyncCallback<X509Cert> } callback - the callback of createX509Cert.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Provides to create X509 certificate object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicate the input cert data.
* @param { AsyncCallback<X509Cert> } callback - the callback of createX509Cert.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
function createX509Cert(inStream: EncodingBlob, callback: AsyncCallback<X509Cert>): void;
/**
* Provides to create X509 certificate object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicate the input cert data.
* @returns { Promise<X509Cert> } the promise of X509 cert instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Provides to create X509 certificate object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicate the input cert data.
* @returns { Promise<X509Cert> } the promise of X509 cert instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Provides to create X509 certificate object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicate the input cert data.
* @returns { Promise<X509Cert> } the promise of X509 cert instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
function createX509Cert(inStream: EncodingBlob): Promise<X509Cert>;
/**
* The CertExtension interface is used to parse and verify certificate extension.
*
* @typedef CertExtension
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* The CertExtension interface is used to parse and verify certificate extension.
*
* @typedef CertExtension
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The CertExtension interface is used to parse and verify certificate extension.
*
* @typedef CertExtension
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface CertExtension {
/**
* Get certificate extension encoded data.
*
* @returns { EncodingBlob } cert extension encoded data.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Get certificate extension encoded data.
*
* @returns { EncodingBlob } cert extension encoded data.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get certificate extension encoded data.
*
* @returns { EncodingBlob } cert extension encoded data.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getEncoded(): EncodingBlob;
/**
* Get certificate extension oid list.
*
* @param { ExtensionOidType } valueType
* @returns { DataArray } cert extension OID list value.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Get certificate extension oid list.
*
* @param { ExtensionOidType } valueType
* @returns { DataArray } cert extension OID list value.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get certificate extension oid list.
*
* @param { ExtensionOidType } valueType
* @returns { DataArray } cert extension OID list value.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getOidList(valueType: ExtensionOidType): DataArray;
/**
* Get certificate extension entry.
*
* @param { ExtensionEntryType } valueType
* @param { DataBlob } oid
* @returns { DataBlob } cert extension entry value.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Get certificate extension entry.
*
* @param { ExtensionEntryType } valueType
* @param { DataBlob } oid
* @returns { DataBlob } cert extension entry value.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get certificate extension entry.
*
* @param { ExtensionEntryType } valueType
* @param { DataBlob } oid
* @returns { DataBlob } cert extension entry value.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getEntry(valueType: ExtensionEntryType, oid: DataBlob): DataBlob;
/**
* Check whether the certificate is a CA(The keyusage contains signature usage and the value of cA in BasicConstraints is true).
* If not a CA, return -1, otherwise return the path length constraint in BasicConstraints.
* If the certificate is a CA and the path length constraint does not appear, then return -2 to indicate that there is no limit to path length.
*
* @returns { number } path length constraint.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Check whether the certificate is a CA(The keyusage contains signature usage and the value of cA in BasicConstraints is true).
* If not a CA, return -1, otherwise return the path length constraint in BasicConstraints.
* If the certificate is a CA and the path length constraint does not appear, then return -2 to indicate that there is no limit to path length.
*
* @returns { number } path length constraint.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Check whether the certificate is a CA(The keyusage contains signature usage and the value of cA in BasicConstraints is true).
* If not a CA, return -1, otherwise return the path length constraint in BasicConstraints.
* If the certificate is a CA and the path length constraint does not appear, then return -2 to indicate that there is no limit to path length.
*
* @returns { number } path length constraint.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
checkCA(): number;
/**
* Check if exists Unsupported critical extension.
*
* @returns { boolean } true - exists unsupported critical extension, false - else.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Check if exists Unsupported critical extension.
*
* @returns { boolean } true - exists unsupported critical extension, false - else.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
hasUnsupportedCriticalExtension(): boolean;
}
/**
* Provides to create certificate extension object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicate the input cert extensions data.
* @param { AsyncCallback<CertExtension> } callback - the callback of of certificate extension instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Provides to create certificate extension object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicate the input cert extensions data.
* @param { AsyncCallback<CertExtension> } callback - the callback of of certificate extension instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Provides to create certificate extension object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicate the input cert extensions data.
* @param { AsyncCallback<CertExtension> } callback - the callback of of certificate extension instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
function createCertExtension(inStream: EncodingBlob, callback: AsyncCallback<CertExtension>): void;
/**
* Provides to create certificate extension object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicate the input cert extensions data.
* @returns { Promise<CertExtension> } the promise of certificate extension instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @since 10
*/
/**
* Provides to create certificate extension object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicate the input cert extensions data.
* @returns { Promise<CertExtension> } the promise of certificate extension instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Provides to create certificate extension object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicate the input cert extensions data.
* @returns { Promise<CertExtension> } the promise of certificate extension instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
function createCertExtension(inStream: EncodingBlob): Promise<CertExtension>;
/**
* Interface of X509CrlEntry.
*
* @typedef X509CrlEntry
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRLEntry
*/
interface X509CrlEntry {
/**
* Returns the ASN of this CRL entry 1 der coding form, i.e. internal sequence.
*
* @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRLEntry#getEncoded
*/
getEncoded(callback: AsyncCallback<EncodingBlob>): void;
/**
* Returns the ASN of this CRL entry 1 der coding form, i.e. internal sequence.
*
* @returns { Promise<EncodingBlob> } the promise of crl entry blob data.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRLEntry#getEncoded
*/
getEncoded(): Promise<EncodingBlob>;
/**
* Get the serial number from this x509crl entry.
*
* @returns { number } serial number of crl entry.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRLEntry#getSerialNumber
*/
getSerialNumber(): number;
/**
* Get the issuer of the x509 certificate described by this entry.
*
* @returns { DataBlob } DataBlob of issuer.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRLEntry#getCertIssuer
*/
getCertIssuer(): DataBlob;
/**
* Get the revocation date from x509crl entry.
*
* @returns { string } string of revocation date.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRLEntry#getRevocationDate
*/
getRevocationDate(): string;
}
/**
* Interface of X509CRLEntry.
*
* @typedef X509CRLEntry
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Interface of X509CRLEntry.
*
* @typedef X509CRLEntry
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface X509CRLEntry {
/**
* Returns the ASN of this CRL entry 1 der coding form, i.e. internal sequence.
*
* @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Returns the ASN of this CRL entry 1 der coding form, i.e. internal sequence.
*
* @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getEncoded(callback: AsyncCallback<EncodingBlob>): void;
/**
* Returns the ASN of this CRL entry 1 der coding form, i.e. internal sequence.
*
* @returns { Promise<EncodingBlob> } the promise of CRL entry blob data.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Returns the ASN of this CRL entry 1 der coding form, i.e. internal sequence.
*
* @returns { Promise<EncodingBlob> } the promise of CRL entry blob data.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getEncoded(): Promise<EncodingBlob>;
/**
* Get the serial number from this x509CRL entry.
*
* @returns { bigint } serial number of CRL entry.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get the serial number from this x509CRL entry.
*
* @returns { bigint } serial number of CRL entry.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getSerialNumber(): bigint;
/**
* Get the issuer of the x509 certificate described by this entry.
*
* @returns { DataBlob } DataBlob of issuer.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get the issuer of the x509 certificate described by this entry.
*
* @returns { DataBlob } DataBlob of issuer.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getCertIssuer(): DataBlob;
/**
* Get the revocation date from x509CRL entry.
*
* @returns { string } string of revocation date.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get the revocation date from x509CRL entry.
*
* @returns { string } string of revocation date.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getRevocationDate(): string;
/**
* Get Extensions of CRL Entry.
*
* @returns { DataBlob } DataBlob of extensions
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get Extensions of CRL Entry.
*
* @returns { DataBlob } DataBlob of extensions
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getExtensions(): DataBlob;
/**
* Check if CRL Entry has extension .
*
* @returns { boolean } true - CRL Entry has extension, false - else.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Check if CRL Entry has extension .
*
* @returns { boolean } true - CRL Entry has extension, false - else.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
hasExtensions(): boolean;
/**
* Get X500 distinguished name of the issuer.
*
* @returns { X500DistinguishedName } X500 distinguished name object.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getCertIssuerX500DistinguishedName(): X500DistinguishedName;
/**
* Get the string type data of the object.
*
* @returns { string } the string type data of the object.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
toString(): string;
/**
* Get the hash value of DER format data.
*
* @returns { Uint8Array } the hash value of DER format data.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
hashCode(): Uint8Array;
/**
* Get the extension der encoding data for the corresponding entity.
*
* @returns { CertExtension } the certExtension object.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getExtensionsObject(): CertExtension;
}
/**
* Interface of X509Crl.
*
* @typedef X509Crl
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL
*/
interface X509Crl {
/**
* Check if the given certificate is on this CRL.
*
* @param { X509Cert } cert - input cert data.
* @returns { boolean } result of Check cert is revoked or not.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#isRevoked
*/
isRevoked(cert: X509Cert): boolean;
/**
* Returns the type of this CRL.
*
* @returns { string } string of crl type.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#getType
*/
getType(): string;
/**
* Get the der coding format.
*
* @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#getEncoded
*/
getEncoded(callback: AsyncCallback<EncodingBlob>): void;
/**
* Get the der coding format.
*
* @returns { Promise<EncodingBlob> } the promise of crl blob data.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#getEncoded
*/
getEncoded(): Promise<EncodingBlob>;
/**
* Use the public key to verify the signature of CRL.
*
* @param { cryptoFramework.PubKey } key - input public Key.
* @param { AsyncCallback<void> } callback - the callback of getEncoded.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#verify
*/
verify(key: cryptoFramework.PubKey, callback: AsyncCallback<void>): void;
/**
* Use the public key to verify the signature of CRL.
*
* @param { cryptoFramework.PubKey } key - input public Key.
* @returns { Promise<void> } the promise returned by the function.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#verify
*/
verify(key: cryptoFramework.PubKey): Promise<void>;
/**
* Get version number from CRL.
*
* @returns { number } version of crl.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#getVersion
*/
getVersion(): number;
/**
* Get the issuer name from CRL. Issuer means the entity that signs and publishes the CRL.
*
* @returns { DataBlob } issuer name of crl.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#getIssuerName
*/
getIssuerName(): DataBlob;
/**
* Get lastUpdate value from CRL.
*
* @returns { string } last update of crl.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#getLastUpdate
*/
getLastUpdate(): string;
/**
* Get nextUpdate value from CRL.
*
* @returns { string } next update of crl.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#getNextUpdate
*/
getNextUpdate(): string;
/**
* This method can be used to find CRL entries in specified CRLs.
*
* @param { number } serialNumber - serial number of crl.
* @returns { X509CrlEntry } next update of crl.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#getRevokedCert
*/
getRevokedCert(serialNumber: number): X509CrlEntry;
/**
* This method can be used to find CRL entries in specified cert.
*
* @param { X509Cert } cert - cert of x509.
* @returns { X509CrlEntry } X509CrlEntry instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#getRevokedCertWithCert
*/
getRevokedCertWithCert(cert: X509Cert): X509CrlEntry;
/**
* Get all entries in this CRL.
*
* @param { AsyncCallback<Array<X509CrlEntry>> } callback - the callback of getRevokedCerts.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#getRevokedCerts
*/
getRevokedCerts(callback: AsyncCallback<Array<X509CrlEntry>>): void;
/**
* Get all entries in this CRL.
*
* @returns { Promise<Array<X509CrlEntry>> } the promise of X509CrlEntry instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#getRevokedCerts
*/
getRevokedCerts(): Promise<Array<X509CrlEntry>>;
/**
* Get the CRL information encoded by Der from this CRL.
*
* @returns { DataBlob } DataBlob of tbs info.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#getTBSInfo
*/
getTbsInfo(): DataBlob;
/**
* Get signature value from CRL.
*
* @returns { DataBlob } DataBlob of signature.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#getSignature
*/
getSignature(): DataBlob;
/**
* Get the signature algorithm name of the CRL signature algorithm.
*
* @returns { string } string of signature algorithm name.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#getSignatureAlgName
*/
getSignatureAlgName(): string;
/**
* Get the signature algorithm oid string from CRL.
*
* @returns { string } string of signature algorithm oid.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#getSignatureAlgOid
*/
getSignatureAlgOid(): string;
/**
* Get the der encoded signature algorithm parameters from the CRL signature algorithm.
*
* @returns { DataBlob } DataBlob of signature algorithm params.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert.X509CRL#getSignatureAlgParams
*/
getSignatureAlgParams(): DataBlob;
}
/**
* Provides to create X509 CRL object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicates the input CRL data.
* @param { AsyncCallback<X509Crl> } callback - the callback of createX509Crl to return x509 CRL instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert#createX509CRL
*/
function createX509Crl(inStream: EncodingBlob, callback: AsyncCallback<X509Crl>): void;
/**
* Provides to create X509 CRL object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicates the input CRL data.
* @returns { Promise<X509Crl> } the promise of x509 CRL instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @since 9
* @deprecated since 11
* @useinstead ohos.security.cert#createX509CRL
*/
function createX509Crl(inStream: EncodingBlob): Promise<X509Crl>;
/**
* Interface of X509CRL.
*
* @typedef X509CRL
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Interface of X509CRL.
*
* @typedef X509CRL
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface X509CRL {
/**
* Check if the given certificate is on this CRL.
*
* @param { X509Cert } cert - input cert data.
* @returns { boolean } result of Check cert is revoked or not.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Check if the given certificate is on this CRL.
*
* @param { X509Cert } cert - input cert data.
* @returns { boolean } result of Check cert is revoked or not.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
isRevoked(cert: X509Cert): boolean;
/**
* Returns the type of this CRL.
*
* @returns { string } string of CRL type.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Returns the type of this CRL.
*
* @returns { string } string of CRL type.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getType(): string;
/**
* Get the der coding format.
*
* @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get the der coding format.
*
* @param { AsyncCallback<EncodingBlob> } callback - the callback of getEncoded.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getEncoded(callback: AsyncCallback<EncodingBlob>): void;
/**
* Get the der coding format.
*
* @returns { Promise<EncodingBlob> } the promise of CRL blob data.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get the der coding format.
*
* @returns { Promise<EncodingBlob> } the promise of CRL blob data.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getEncoded(): Promise<EncodingBlob>;
/**
* Use the public key to verify the signature of CRL.
*
* @param { cryptoFramework.PubKey } key - input public Key.
* @param { AsyncCallback<void> } callback - the callback of getEncoded.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Use the public key to verify the signature of CRL.
*
* @param { cryptoFramework.PubKey } key - input public Key.
* @param { AsyncCallback<void> } callback - the callback of getEncoded.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
verify(key: cryptoFramework.PubKey, callback: AsyncCallback<void>): void;
/**
* Use the public key to verify the signature of CRL.
*
* @param { cryptoFramework.PubKey } key - input public Key.
* @returns { Promise<void> } the promise returned by the function.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Use the public key to verify the signature of CRL.
*
* @param { cryptoFramework.PubKey } key - input public Key.
* @returns { Promise<void> } the promise returned by the function.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
verify(key: cryptoFramework.PubKey): Promise<void>;
/**
* Get version number from CRL.
*
* @returns { number } version of CRL.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get version number from CRL.
*
* @returns { number } version of CRL.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getVersion(): number;
/**
* Get the issuer name from CRL. Issuer means the entity that signs and publishes the CRL.
*
* @returns { DataBlob } issuer name of CRL.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get the issuer name from CRL. Issuer means the entity that signs and publishes the CRL.
*
* @returns { DataBlob } issuer name of CRL.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getIssuerName(): DataBlob;
/**
* Get lastUpdate value from CRL.
*
* @returns { string } last update of CRL.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get lastUpdate value from CRL.
*
* @returns { string } last update of CRL.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getLastUpdate(): string;
/**
* Get nextUpdate value from CRL.
*
* @returns { string } next update of CRL.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get nextUpdate value from CRL.
*
* @returns { string } next update of CRL.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getNextUpdate(): string;
/**
* This method can be used to find CRL entries in specified CRLs.
*
* @param { bigint } serialNumber - serial number of CRL.
* @returns { X509CRLEntry } next update of CRL.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* This method can be used to find CRL entries in specified CRLs.
*
* @param { bigint } serialNumber - serial number of CRL.
* @returns { X509CRLEntry } next update of CRL.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getRevokedCert(serialNumber: bigint): X509CRLEntry;
/**
* This method can be used to find CRL entries in specified cert.
*
* @param { X509Cert } cert - cert of x509.
* @returns { X509CRLEntry } X509CRLEntry instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* This method can be used to find CRL entries in specified cert.
*
* @param { X509Cert } cert - cert of x509.
* @returns { X509CRLEntry } X509CRLEntry instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getRevokedCertWithCert(cert: X509Cert): X509CRLEntry;
/**
* Get all entries in this CRL.
*
* @param { AsyncCallback<Array<X509CRLEntry>> } callback - the callback of getRevokedCerts.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get all entries in this CRL.
*
* @param { AsyncCallback<Array<X509CRLEntry>> } callback - the callback of getRevokedCerts.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getRevokedCerts(callback: AsyncCallback<Array<X509CRLEntry>>): void;
/**
* Get all entries in this CRL.
*
* @returns { Promise<Array<X509CRLEntry>> } the promise of X509CRLEntry instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get all entries in this CRL.
*
* @returns { Promise<Array<X509CRLEntry>> } the promise of X509CRLEntry instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types;
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getRevokedCerts(): Promise<Array<X509CRLEntry>>;
/**
* Get the CRL information encoded by Der from this CRL.
*
* @returns { DataBlob } DataBlob of tbs info.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get the CRL information encoded by Der from this CRL.
*
* @returns { DataBlob } DataBlob of tbs info.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getTBSInfo(): DataBlob;
/**
* Get signature value from CRL.
*
* @returns { DataBlob } DataBlob of signature.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get signature value from CRL.
*
* @returns { DataBlob } DataBlob of signature.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getSignature(): DataBlob;
/**
* Get the signature algorithm name of the CRL signature algorithm.
*
* @returns { string } string of signature algorithm name.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get the signature algorithm name of the CRL signature algorithm.
*
* @returns { string } string of signature algorithm name.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getSignatureAlgName(): string;
/**
* Get the signature algorithm oid string from CRL.
*
* @returns { string } string of signature algorithm oid.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get the signature algorithm oid string from CRL.
*
* @returns { string } string of signature algorithm oid.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getSignatureAlgOid(): string;
/**
* Get the der encoded signature algorithm parameters from the CRL signature algorithm.
*
* @returns { DataBlob } DataBlob of signature algorithm params.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get the der encoded signature algorithm parameters from the CRL signature algorithm.
*
* @returns { DataBlob } DataBlob of signature algorithm params.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getSignatureAlgParams(): DataBlob;
/**
* Get Extensions of CRL Entry.
*
* @returns { DataBlob } DataBlob of extensions
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get Extensions of CRL Entry.
*
* @returns { DataBlob } DataBlob of extensions
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getExtensions(): DataBlob;
/**
* Check if the X509 CRL match the parameters.
*
* @param { X509CRLMatchParameters } param - indicate the X509CRLMatchParameters object.
* @returns { boolean } true - match X509CRL, false - not match.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Check if the X509 CRL match the parameters.
*
* @param { X509CRLMatchParameters } param - indicate the X509CRLMatchParameters object.
* @returns { boolean } true - match X509CRL, false - not match.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
match(param: X509CRLMatchParameters): boolean;
/**
* Get X500 distinguished name of the issuer.
*
* @returns { X500DistinguishedName } X500 distinguished name object.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getIssuerX500DistinguishedName(): X500DistinguishedName;
/**
* Get the string type data of the object.
*
* @returns { string } the string type data of the object.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
toString(): string;
/**
* Get the hash value of DER format data.
*
* @returns { Uint8Array } the hash value of DER format data.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
hashCode(): Uint8Array;
/**
* Get the extension der encoding data for the corresponding entity.
*
* @returns { CertExtension } the certExtension object.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getExtensionsObject(): CertExtension;
}
/**
* Provides to create X509 CRL object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicates the input CRL data.
* @param { AsyncCallback<X509CRL> } callback - the callback of createX509CRL to return x509 CRL instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Provides to create X509 CRL object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicates the input CRL data.
* @param { AsyncCallback<X509CRL> } callback - the callback of createX509CRL to return x509 CRL instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
function createX509CRL(inStream: EncodingBlob, callback: AsyncCallback<X509CRL>): void;
/**
* Provides to create X509 CRL object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicates the input CRL data.
* @returns { Promise<X509CRL> } the promise of x509 CRL instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Provides to create X509 CRL object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicates the input CRL data.
* @returns { Promise<X509CRL> } the promise of x509 CRL instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
function createX509CRL(inStream: EncodingBlob): Promise<X509CRL>;
/**
* Certification chain validator.
*
* @typedef CertChainValidator
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Certification chain validator.
*
* @typedef CertChainValidator
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Certification chain validator.
*
* @typedef CertChainValidator
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface CertChainValidator {
/**
* Validate the cert chain.
*
* @param { CertChainData } certChain - indicate the cert chain validator data.
* @param { AsyncCallback<void> } callback - the callback of validate.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @throws { BusinessError } 19030002 - the certificate signature verification failed.
* @throws { BusinessError } 19030003 - the certificate has not taken effect.
* @throws { BusinessError } 19030004 - the certificate has expired.
* @throws { BusinessError } 19030005 - failed to obtain the certificate issuer.
* @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate.
* @throws { BusinessError } 19030007 - the key cannot be used for digital signature.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Validate the cert chain.
*
* @param { CertChainData } certChain - indicate the cert chain validator data.
* @param { AsyncCallback<void> } callback - the callback of validate.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @throws { BusinessError } 19030002 - the certificate signature verification failed.
* @throws { BusinessError } 19030003 - the certificate has not taken effect.
* @throws { BusinessError } 19030004 - the certificate has expired.
* @throws { BusinessError } 19030005 - failed to obtain the certificate issuer.
* @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate.
* @throws { BusinessError } 19030007 - the key cannot be used for digital signature.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Validate the cert chain.
*
* @param { CertChainData } certChain - indicate the cert chain validator data.
* @param { AsyncCallback<void> } callback - the callback of validate.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @throws { BusinessError } 19030002 - the certificate signature verification failed.
* @throws { BusinessError } 19030003 - the certificate has not taken effect.
* @throws { BusinessError } 19030004 - the certificate has expired.
* @throws { BusinessError } 19030005 - failed to obtain the certificate issuer.
* @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate.
* @throws { BusinessError } 19030007 - the key cannot be used for digital signature.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
validate(certChain: CertChainData, callback: AsyncCallback<void>): void;
/**
* Validate the cert chain.
*
* @param { CertChainData } certChain - indicate the cert chain validator data.
* @returns { Promise<void> } the promise returned by the function.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @throws { BusinessError } 19030002 - the certificate signature verification failed.
* @throws { BusinessError } 19030003 - the certificate has not taken effect.
* @throws { BusinessError } 19030004 - the certificate has expired.
* @throws { BusinessError } 19030005 - failed to obtain the certificate issuer.
* @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate.
* @throws { BusinessError } 19030007 - the key cannot be used for digital signature.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Validate the cert chain.
*
* @param { CertChainData } certChain - indicate the cert chain validator data.
* @returns { Promise<void> } the promise returned by the function.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @throws { BusinessError } 19030002 - the certificate signature verification failed.
* @throws { BusinessError } 19030003 - the certificate has not taken effect.
* @throws { BusinessError } 19030004 - the certificate has expired.
* @throws { BusinessError } 19030005 - failed to obtain the certificate issuer.
* @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate.
* @throws { BusinessError } 19030007 - the key cannot be used for digital signature.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Validate the cert chain.
*
* @param { CertChainData } certChain - indicate the cert chain validator data.
* @returns { Promise<void> } the promise returned by the function.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @throws { BusinessError } 19030002 - the certificate signature verification failed.
* @throws { BusinessError } 19030003 - the certificate has not taken effect.
* @throws { BusinessError } 19030004 - the certificate has expired.
* @throws { BusinessError } 19030005 - failed to obtain the certificate issuer.
* @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate.
* @throws { BusinessError } 19030007 - the key cannot be used for digital signature.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
validate(certChain: CertChainData): Promise<void>;
/**
* The cert chain related algorithm.
*
* @type { string }
* @readonly
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* The cert chain related algorithm.
*
* @type { string }
* @readonly
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The cert chain related algorithm.
*
* @type { string }
* @readonly
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
readonly algorithm: string;
}
/**
* Provides to create certificate chain object. The returned object provides the verification capability.
*
* @param { string } algorithm - indicates the cert chain validator type.
* @returns { CertChainValidator } the cert chain validator instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @since 9
*/
/**
* Provides to create certificate chain object. The returned object provides the verification capability.
*
* @param { string } algorithm - indicates the cert chain validator type.
* @returns { CertChainValidator } the cert chain validator instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Provides to create certificate chain object. The returned object provides the verification capability.
*
* @param { string } algorithm - indicates the cert chain validator type.
* @returns { CertChainValidator } the cert chain validator instance.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
function createCertChainValidator(algorithm: string): CertChainValidator;
/**
* Enum for general name use type.
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
enum GeneralNameType {
/**
* Indicates the name used for other.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
GENERAL_NAME_TYPE_OTHER_NAME = 0,
/**
* Indicates the name used for RFC822.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
GENERAL_NAME_TYPE_RFC822_NAME = 1,
/**
* Indicates the name used for DNS.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
GENERAL_NAME_TYPE_DNS_NAME = 2,
/**
* Indicates the name used for X.400 address.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
GENERAL_NAME_TYPE_X400_ADDRESS = 3,
/**
* Indicates the name used for X.500 directory.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
GENERAL_NAME_TYPE_DIRECTORY_NAME = 4,
/**
* Indicates the name used for EDI.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
GENERAL_NAME_TYPE_EDI_PARTY_NAME = 5,
/**
* Indicates the name used for URI.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
GENERAL_NAME_TYPE_UNIFORM_RESOURCE_ID = 6,
/**
* Indicates the name used for IP address.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
GENERAL_NAME_TYPE_IP_ADDRESS = 7,
/**
* Indicates the name used for registered ID.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
GENERAL_NAME_TYPE_REGISTERED_ID = 8
}
/**
* GeneralName object
*
* @typedef GeneralName
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface GeneralName {
/**
* The general name type.
*
* @type { GeneralNameType }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
type: GeneralNameType;
/**
* The general name in DER format
*
* @type { ?Uint8Array }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
name?: Uint8Array;
}
/**
* X509 Cert match parameters
*
* @typedef X509CertMatchParameters
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* X509 Cert match parameters
*
* @typedef X509CertMatchParameters
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface X509CertMatchParameters {
/**
* To match SubjectAlternativeNames of cert extensions:
* [Rule]
* null : Do not match.
* NOT null : match after [matchAllSubjectAltNames]
*
* @type { ?Array<GeneralName> } SubjectAlternativeNames is in DER encoding format
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
subjectAlternativeNames?: Array<GeneralName>;
/**
* Indicate if match all subject alternate name:
* [Rule]
* true : match if [subjectAlternativeNames] is equal with all of [SubjectAlternativeNames of cert extensions]
* false : match if [subjectAlternativeNames] is only equal with one of [SubjectAlternativeNames of cert extensions]
*
* @type { ?boolean }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
matchAllSubjectAltNames?: boolean;
/**
* To match AuthorityKeyIdentifier of cert extensions in DER encoding:
* [Rule]
* null : Do not match.
* NOT null : match if it is equal with [AuthorityKeyIdentifier of cert extensions] in DER encoding
*
* @type { ?Uint8Array } the key identifier
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
authorityKeyIdentifier?: Uint8Array;
/**
* To match BaseConstraints.pathLenConstraint of cert extensions:
* [Rule]
* >=0 : The certificate must contain BaseConstraints extension, and the cA field in the extension takes.
* -2 : The cA field in the BaseConstraints extension of the certificate must be set to false or the certificate does not contain BaseConstraints extension.
* other : Do not match.
*
* @type { ?number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
minPathLenConstraint?: number;
/**
* To match X509Cert:
* [Rule]
* null : Do not match.
* NOT null : match if x509Cert.getEncoding is equal.
*
* @type { ?X509Cert }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* To match X509Cert:
* [Rule]
* null : Do not match.
* NOT null : match if x509Cert.getEncoding is equal.
*
* @type { ?X509Cert }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
x509Cert?: X509Cert;
/**
* To match the validDate of cert:
* [Rule]
* null : Do not match.
* NOT null : match if [notBefore of cert] <= [validDate] <= [notAfter of cert].
*
* @type { ?string } format is YYMMDDHHMMSSZ or YYYYMMDDHHMMSSZ.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* To match the validDate of cert:
* [Rule]
* null : Do not match.
* NOT null : match if [notBefore of cert] <= [validDate] <= [notAfter of cert].
*
* @type { ?string } format is YYMMDDHHMMSSZ or YYYYMMDDHHMMSSZ.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
validDate?: string;
/**
* To match the issuer of cert:
* [Rule]
* null : Do not match.
* NOT null : match if it is equal with [issuer of cert] in DER encoding.
*
* @type { ?Uint8Array }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* To match the issuer of cert:
* [Rule]
* null : Do not match.
* NOT null : match if it is equal with [issuer of cert] in DER encoding.
*
* @type { ?Uint8Array }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
issuer?: Uint8Array;
/**
* To match the ExtendedKeyUsage of cert extensions:
* [Rule]
* null : Do not match.
* NOT null : match ok if [ExtendedKeyUsage of cert extensions] is null, or
* [ExtendedKeyUsage of cert extensions] include [extendedKeyUsage].
*
* @type { ?Array<string> } array of oIDs.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
extendedKeyUsage?: Array<string>;
/**
* The X509Certificate must have subject and subject alternative names that meet the specified name constraints:
* [Rule]
* null : Do not match.
* NOT null : match ok if [NameConstraints of cert extensions] is null, or
* [NameConstraints of cert extensions] include [nameConstraints].
*
* @type { ?Uint8Array } ASN.1 DER encoded form of nameConstraints
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
nameConstraints?: Uint8Array;
/**
* The X509Certificate must have subject and subject alternative names that meet the specified name constraints:
* [Rule]
* null : Do not match.
* NOT null : match ok if [Certificate Policies of cert extensions] is null, or
* [Certificate Policies of cert extensions] include [certPolicy].
*
* @type { ?Array<string> } array of oIDs.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
certPolicy?: Array<string>;
/**
* The specified date must fall within the private key validity period for the X509Certificate:
* [Rule]
* null : Do not match.
* NOT null : match ok if [Private Key Valid Period of cert extensions] is null, or
* [privateKeyValid] fall in [Private Key Valid Period of cert extensions].
*
* @type { ?string } format is YYMMDDHHMMSSZ or YYYYMMDDHHMMSSZ
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
privateKeyValid?: string;
/**
* To match the KeyUsage of cert extensions:
* [Rule]
* null : Do not match.
* NOT null : match ok if [KeyUsage of cert extensions] is null, or
* [KeyUsage of cert extensions] include [keyUsage].
*
* @type { ?Array<boolean> }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* To match the KeyUsage of cert extensions:
* [Rule]
* null : Do not match.
* NOT null : match ok if [KeyUsage of cert extensions] is null, or
* [KeyUsage of cert extensions] include [keyUsage].
*
* @type { ?Array<boolean> }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
keyUsage?: Array<boolean>;
/**
* The specified serial number must match the serialnumber for the X509Certificate:
* [Rule]
* null : Do not match.
* NOT null : match ok if it is equal with [serialNumber of cert].
*
* @type { ?bigint }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The specified serial number must match the serialnumber for the X509Certificate:
* [Rule]
* null : Do not match.
* NOT null : match ok if it is equal with [serialNumber of cert].
*
* @type { ?bigint }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
serialNumber?: bigint;
/**
* The specified value must match the subject for the X509Certificate:
* [Rule]
* null : Do not match.
* NOT null : match ok if it is equal with [subject of cert].
*
* @type { ?Uint8Array } subject in DER encoding format
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The specified value must match the subject for the X509Certificate:
* [Rule]
* null : Do not match.
* NOT null : match ok if it is equal with [subject of cert].
*
* @type { ?Uint8Array } subject in DER encoding format
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
subject?: Uint8Array;
/**
* The specified value must match the Subject Key Identifier extension for the X509Certificate:
* [Rule]
* null : Do not match.
* NOT null : match ok if it is equal with [Subject Key Identifier of cert extensions].
*
* @type { ?Uint8Array } subjectKeyIdentifier in DER encoding format ??
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
subjectKeyIdentifier?: Uint8Array;
/**
* The specified value must match the publicKey for the X509Certificate:
* [Rule]
* null : Do not match.
* NOT null : match ok if it is equal with [publicKey of cert].
*
* @type { ?DataBlob } publicKey
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The specified value must match the publicKey for the X509Certificate:
* [Rule]
* null : Do not match.
* NOT null : match ok if it is equal with [publicKey of cert].
*
* @type { ?DataBlob } publicKey
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
publicKey?: DataBlob;
/**
* The specified value must match the publicKey for the X509Certificate:
* [Rule]
* null : Do not match.
* NOT null : match ok if it is equal with [publicKey of cert].
*
* @type { ?string } the object identifier (OID) of the signature algorithm to check.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The specified value must match the publicKey for the X509Certificate:
* [Rule]
* null : Do not match.
* NOT null : match ok if it is equal with [publicKey of cert].
*
* @type { ?string } the object identifier (OID) of the signature algorithm to check.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
publicKeyAlgID?: string;
}
/**
* X509 CRL match parameters
*
* @typedef X509CRLMatchParameters
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* X509 CRL match parameters
*
* @typedef X509CRLMatchParameters
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface X509CRLMatchParameters {
/**
* To match the issuer of cert:
* [Rule]
* null : Do not match.
* NOT null : match if it is equal with [issuer of cert] in DER encoding.
*
* @type { ?Array<Uint8Array> }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* To match the issuer of cert:
* [Rule]
* null : Do not match.
* NOT null : match if it is equal with [issuer of cert] in DER encoding.
*
* @type { ?Array<Uint8Array> }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
issuer?: Array<Uint8Array>;
/**
* To match X509Cert:
* [Rule]
* null : Do not match.
* NOT null : match if x509Cert.getEncoding is equal.
*
* @type { ?X509Cert }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* To match X509Cert:
* [Rule]
* null : Do not match.
* NOT null : match if x509Cert.getEncoding is equal.
*
* @type { ?X509Cert }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
x509Cert?: X509Cert;
/**
* To match updateDateTime of CRL:
* [Rule]
* null : Do not verify.
* NOT null : verify if [thisUpdate in CRL] <= updateDateTime <= [nextUpdate in CRL]
*
* @type { ?string }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
updateDateTime?: string;
/**
* To match the maximum of CRL number extension:
* [Rule]
* null : Do not verify.
* NOT null : verify if [CRL number extension] <= maxCRL.
*
* @type { ?bigint }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
maxCRL?: bigint;
/**
* To match the minimum of CRL number extension:
* [Rule]
* null : Do not verify.
* NOT null : verify if [CRL number extension] >= minCRL.
*
* @type { ?bigint }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
minCRL?: bigint;
}
/**
* The certificate and CRL collection object.
*
* @typedef CertCRLCollection
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The certificate and CRL collection object.
*
* @typedef CertCRLCollection
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface CertCRLCollection {
/**
* return all Array<X509Cert> which match X509CertMatchParameters
*
* @param { X509CertMatchParameters } param - indicate the X509CertMatchParameters object.
* @returns { Promise<Array<X509Cert>> }
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* return all Array<X509Cert> which match X509CertMatchParameters
*
* @param { X509CertMatchParameters } param - indicate the X509CertMatchParameters object.
* @returns { Promise<Array<X509Cert>> }
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
selectCerts(param: X509CertMatchParameters): Promise<Array<X509Cert>>;
/**
* return the X509 Cert which match X509CertMatchParameters
*
* @param { X509CertMatchParameters } param - indicate the X509CertMatchParameters object.
* @param { AsyncCallback<Array<X509Cert>> } callback - the callback of select cert.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* return the X509 Cert which match X509CertMatchParameters
*
* @param { X509CertMatchParameters } param - indicate the X509CertMatchParameters object.
* @param { AsyncCallback<Array<X509Cert>> } callback - the callback of select cert.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
selectCerts(param: X509CertMatchParameters, callback: AsyncCallback<Array<X509Cert>>): void;
/**
* return all X509 CRL which match X509CRLMatchParameters
*
* @param { X509CRLMatchParameters } param - indicate the X509CRLMatchParameters object.
* @returns { Promise<Array<X509CRL>> }
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* return all X509 CRL which match X509CRLMatchParameters
*
* @param { X509CRLMatchParameters } param - indicate the X509CRLMatchParameters object.
* @returns { Promise<Array<X509CRL>> }
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
selectCRLs(param: X509CRLMatchParameters): Promise<Array<X509CRL>>;
/**
* return all X509 CRL which match X509CRLMatchParameters
*
* @param { X509CRLMatchParameters } param - indicate the X509CRLMatchParameters object.
* @param { AsyncCallback<Array<X509CRL>> } callback - the callback of select CRL.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* return all X509 CRL which match X509CRLMatchParameters
*
* @param { X509CRLMatchParameters } param - indicate the X509CRLMatchParameters object.
* @param { AsyncCallback<Array<X509CRL>> } callback - the callback of select CRL.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
selectCRLs(param: X509CRLMatchParameters, callback: AsyncCallback<Array<X509CRL>>): void;
}
/**
* create object CertCRLCollection
*
* @param { Array<X509Cert> } certs - array of X509Cert.
* @param { Array<X509CRL> } [options] crls - array of X509CRL.
* @returns { CertCRLCollection }
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* create object CertCRLCollection
*
* @param { Array<X509Cert> } certs - array of X509Cert.
* @param { Array<X509CRL> } [crls] - array of X509CRL.
* @returns { CertCRLCollection }
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
function createCertCRLCollection(certs: Array<X509Cert>, crls?: Array<X509CRL>): CertCRLCollection;
/**
* X509 Certification chain object.
*
* @typedef X509CertChain
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* X509 Certification chain object.
*
* @typedef X509CertChain
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface X509CertChain {
/**
* Get the X509 certificate list.
*
* @returns { Array<X509Cert> } the X509 certificate list.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Get the X509 certificate list.
*
* @returns { Array<X509Cert> } the X509 certificate list.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getCertList(): Array<X509Cert>;
/**
* Validate the cert chain with validate parameters.
*
* @param { CertChainValidationParameters } param - indicate the cert chain Validate parameters.
* @returns { Promise<CertChainValidationResult> } the promise returned by the function.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @throws { BusinessError } 19030002 - the certificate signature verification failed.
* @throws { BusinessError } 19030003 - the certificate has not taken effect.
* @throws { BusinessError } 19030004 - the certificate has expired.
* @throws { BusinessError } 19030005 - failed to obtain the certificate issuer.
* @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate.
* @throws { BusinessError } 19030007 - the key cannot be used for digital signature.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Validate the cert chain with validate parameters.
*
* @param { CertChainValidationParameters } param - indicate the cert chain Validate parameters.
* @returns { Promise<CertChainValidationResult> } the promise returned by the function.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @throws { BusinessError } 19030002 - the certificate signature verification failed.
* @throws { BusinessError } 19030003 - the certificate has not taken effect.
* @throws { BusinessError } 19030004 - the certificate has expired.
* @throws { BusinessError } 19030005 - failed to obtain the certificate issuer.
* @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate.
* @throws { BusinessError } 19030007 - the key cannot be used for digital signature.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
validate(param: CertChainValidationParameters): Promise<CertChainValidationResult>;
/**
* Validate the cert chain with validate parameters.
*
* @param { CertChainValidationParameters } param - indicate the cert chain validate parameters.
* @param { AsyncCallback<CertChainValidationResult> } callback - indicate the cert chain validate result.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @throws { BusinessError } 19030002 - the certificate signature verification failed.
* @throws { BusinessError } 19030003 - the certificate has not taken effect.
* @throws { BusinessError } 19030004 - the certificate has expired.
* @throws { BusinessError } 19030005 - failed to obtain the certificate issuer.
* @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate.
* @throws { BusinessError } 19030007 - the key cannot be used for digital signature.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Validate the cert chain with validate parameters.
*
* @param { CertChainValidationParameters } param - indicate the cert chain validate parameters.
* @param { AsyncCallback<CertChainValidationResult> } callback - indicate the cert chain validate result.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @throws { BusinessError } 19030002 - the certificate signature verification failed.
* @throws { BusinessError } 19030003 - the certificate has not taken effect.
* @throws { BusinessError } 19030004 - the certificate has expired.
* @throws { BusinessError } 19030005 - failed to obtain the certificate issuer.
* @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate.
* @throws { BusinessError } 19030007 - the key cannot be used for digital signature.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
validate(param: CertChainValidationParameters, callback: AsyncCallback<CertChainValidationResult>): void;
/**
* Get the string type data of the object.
*
* @returns { string } the string type data of the object.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
toString(): string;
/**
* Get the hash value of DER format data.
*
* @returns { Uint8Array } the hash value of DER format data.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
hashCode(): Uint8Array;
}
/**
* Provides to create X509 certificate chain object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicate the input cert data.
* @returns { Promise<X509CertChain> }
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Provides to create X509 certificate chain object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicate the input cert data.
* @returns { Promise<X509CertChain> }
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
function createX509CertChain(inStream: EncodingBlob): Promise<X509CertChain>;
/**
* Provides to create X509 certificate chain object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicate the input cert data.
* @param { AsyncCallback<X509CertChain> } callback
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Provides to create X509 certificate chain object.
* The returned object provides the data parsing or verification capability.
*
* @param { EncodingBlob } inStream - indicate the input cert data.
* @param { AsyncCallback<X509CertChain> } callback
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
function createX509CertChain(inStream: EncodingBlob, callback: AsyncCallback<X509CertChain>): void;
/**
* Create certificate chain object with certificate array.
*
* @param { Array<X509Cert> } certs - indicate the certificate array.
* @returns { X509CertChain } the certificate chain object.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Create certificate chain object with certificate array.
*
* @param { Array<X509Cert> } certs - indicate the certificate array.
* @returns { X509CertChain } the certificate chain object.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
function createX509CertChain(certs: Array<X509Cert>): X509CertChain;
/**
* Create and validate a certificate chain with the build parameters.
*
* @param { CertChainBuildParameters } param - indicate the certificate chain build parameters.
* @returns { Promise<CertChainBuildResult> } the promise returned by the function.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @throws { BusinessError } 19030002 - the certificate signature verification failed.
* @throws { BusinessError } 19030003 - the certificate has not taken effect.
* @throws { BusinessError } 19030004 - the certificate has expired.
* @throws { BusinessError } 19030005 - failed to obtain the certificate issuer.
* @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate.
* @throws { BusinessError } 19030007 - the key cannot be used for digital signature.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
function buildX509CertChain(param: CertChainBuildParameters): Promise<CertChainBuildResult>;
/**
* Get trust anchor array from specified P12.
*
* @param { Uint8Array } keystore - the file path of the P12.
* @param { string } pwd - the password of the P12.
* @returns { Promise<Array<X509TrustAnchor>> } the promise returned by the function.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @throws { BusinessError } 19030002 - the certificate signature verification failed.
* @throws { BusinessError } 19030003 - the certificate has not taken effect.
* @throws { BusinessError } 19030004 - the certificate has expired.
* @throws { BusinessError } 19030005 - failed to obtain the certificate issuer.
* @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate.
* @throws { BusinessError } 19030007 - the key cannot be used for digital signature.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
function createTrustAnchorsWithKeyStore(keystore: Uint8Array, pwd: string): Promise<Array<X509TrustAnchor>>;
/**
* Create X500DistinguishedName object with the name in string format.
*
* @param { string } nameStr - the string format of the Name type defined by X509.
* @returns { Promise<X500DistinguishedName> } the promise returned by the function.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @throws { BusinessError } 19030002 - the certificate signature verification failed.
* @throws { BusinessError } 19030003 - the certificate has not taken effect.
* @throws { BusinessError } 19030004 - the certificate has expired.
* @throws { BusinessError } 19030005 - failed to obtain the certificate issuer.
* @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate.
* @throws { BusinessError } 19030007 - the key cannot be used for digital signature.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
function createX500DistinguishedName(nameStr: string): Promise<X500DistinguishedName>;
/**
* Create X500DistinguishedName object with the name in DER format.
*
* @param { Uint8Array } nameDer - the DER format of the Name type defined by X509.
* @returns { Promise<X500DistinguishedName> } the promise returned by the function.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @throws { BusinessError } 19030002 - the certificate signature verification failed.
* @throws { BusinessError } 19030003 - the certificate has not taken effect.
* @throws { BusinessError } 19030004 - the certificate has expired.
* @throws { BusinessError } 19030005 - failed to obtain the certificate issuer.
* @throws { BusinessError } 19030006 - the key cannot be used for signing a certificate.
* @throws { BusinessError } 19030007 - the key cannot be used for digital signature.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
function createX500DistinguishedName(nameDer: Uint8Array): Promise<X500DistinguishedName>;
/**
* Provides the x500 distinguished name type.
*
* @typedef X500DistinguishedName
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface X500DistinguishedName {
/**
* Get distinguished name string.
*
* @returns { string } distinguished name string.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getName(): string;
/**
* Get distinguished name string by type.
*
* @param { string } type - the specified type name.
* @returns { Array<string> } distinguished name string.
* @throws { BusinessError } 401 - invalid parameters. Possible causes: 1. Mandatory parameters are left unspecified;
* <br>2. Incorrect parameter types; 3. Parameter verification failed.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getName(type: string): Array<string>;
/**
* Get distinguished name in der coding format.
*
* @returns { EncodingBlob } distinguished name encoded data.
* @throws { BusinessError } 19020001 - memory error.
* @throws { BusinessError } 19020002 - runtime error.
* @throws { BusinessError } 19030001 - crypto operation error.
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
getEncoded(): EncodingBlob;
}
/**
* Provides the x509 trust anchor type.
*
* @typedef X509TrustAnchor
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Provides the x509 trust anchor type.
*
* @typedef X509TrustAnchor
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface X509TrustAnchor {
/**
* The trust CA cert.
*
* @type { ?X509Cert }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The trust CA cert.
*
* @type { ?X509Cert }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
CACert?: X509Cert;
/**
* The trust CA public key in DER format.
*
* @type { ?Uint8Array }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The trust CA public key in DER format.
*
* @type { ?Uint8Array }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
CAPubKey?: Uint8Array;
/**
* The trust CA subject in DER format.
*
* @type { ?Uint8Array }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The trust CA subject in DER format.
*
* @type { ?Uint8Array }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
CASubject?: Uint8Array;
/**
* The name constraints in DER format.
*
* @type { ?Uint8Array }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
nameConstraints?: Uint8Array;
}
/**
* Enum for revocation check option.
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
enum RevocationCheckOptions {
/**
* Indicates priority to use OCSP for verification.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
REVOCATION_CHECK_OPTION_PREFER_OCSP = 0,
/**
* Indicates support for verifying revocation status by accessing the network to obtain CRL or OCSP responses.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
REVOCATION_CHECK_OPTION_ACCESS_NETWORK,
/**
* Indicates when the 'REVOCATION_CHECK_OPTION_ACCESS_NETWORK' option is turned on, it is effective.
* If the preferred verification method is unable to verify the certificate status due to network reasons,
* an alternative solution will be used for verification.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
REVOCATION_CHECK_OPTION_FALLBACK_NO_PREFER,
/**
* Indicates when the 'REVOCATION_CHECK_OPTION_ACCESS_NETWORK' option is turned on, it is effective.
* If both the CRL and OCSP responses obtained online cannot verify the certificate status due to network reasons,
* the locally set CRL and OCSP responses will be used for verification.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
REVOCATION_CHECK_OPTION_FALLBACK_LOCAL
}
/**
* Enum for validation policy type.
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
enum ValidationPolicyType {
/**
* Indicates not need to verify the sslHostname field in the certificate.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
VALIDATION_POLICY_TYPE_X509 = 0,
/**
* Indicates need to verify the sslHostname field in the certificate.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
VALIDATION_POLICY_TYPE_SSL
}
/**
* Enum for validation keyusage type.
*
* @enum { number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
enum KeyUsageType {
/**
* Indicates the certificate public key can be used for digital signature operations.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
KEYUSAGE_DIGITAL_SIGNATURE = 0,
/**
* Indicates certificate public key can be used for non repudiation operations, preventing the signer from denying their signature.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
KEYUSAGE_NON_REPUDIATION,
/**
* Indicates certificate public key can be used for key encryption operations, for encrypting symmetric keys, etc.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
KEYUSAGE_KEY_ENCIPHERMENT,
/**
* Indicates certificate public key can be used for data encryption operations, to encrypt data.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
KEYUSAGE_DATA_ENCIPHERMENT,
/**
* Indicates certificate public key can be used for key negotiation operations, to negotiate shared keys.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
KEYUSAGE_KEY_AGREEMENT,
/**
* Indicates certificate public key can be used for certificate signing operations.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
KEYUSAGE_KEY_CERT_SIGN,
/**
* Indicates certificate public key can be used for signing operations on certificate revocation lists (CRLs).
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
KEYUSAGE_CRL_SIGN,
/**
* Indicates the key can only be used for encryption operations and cannot be used for decryption operations.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
KEYUSAGE_ENCIPHER_ONLY,
/**
* Indicates the key can only be used for decryption operations and cannot be used for encryption operations.
*
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
KEYUSAGE_DECIPHER_ONLY
}
/**
* Provides the certificate chain validate revocation parameters.
*
* @typedef RevocationCheckParameter
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface RevocationCheckParameter {
/**
* The additional field for sending OCSP requests.
*
* @type { ?Array<Uint8Array> }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
ocspRequestExtension?: Array<Uint8Array>;
/**
* The server URL address for sending requests to OCSP.
*
* @type { ?string }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
ocspResponderURI?: string;
/**
* The signing certificate for verifying OCSP response signatures.
*
* @type { ?X509Cert }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
ocspResponderCert?: X509Cert;
/**
* The OCSP response message returned by an OCSP server.
*
* @type { ?Uint8Array }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
ocspResponses?: Uint8Array;
/**
* The URL address for downloading the CRL list.
*
* @type { ?string }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
crlDownloadURI?: string;
/**
* The certificate revocation status verification option.
*
* @type { ?Array<RevocationCheckOptions> }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
options?: Array<RevocationCheckOptions>;
/**
* The digest used to generate the ocsp cert id.
*
* @type { ?string }
* @default SHA256
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
ocspDigest?: string;
}
/**
* Provides the certificate chain validate parameters type.
*
* @typedef CertChainValidationParameters
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Provides the certificate chain validate parameters type.
*
* @typedef CertChainValidationParameters
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface CertChainValidationParameters {
/**
* The datetime to verify the certificate chain validity period.
*
* @type { ?string }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The datetime to verify the certificate chain validity period.
*
* @type { ?string }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
date?: string;
/**
* The trust ca certificates to verify the certificate chain.
*
* @type { Array<X509TrustAnchor> }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The trust ca certificates to verify the certificate chain.
*
* @type { Array<X509TrustAnchor> }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
trustAnchors: Array<X509TrustAnchor>;
/**
* The cert and CRL list to build cert chain and verify the certificate chain revocation state.
*
* @type { ?Array<CertCRLCollection> }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The cert and CRL list to build cert chain and verify the certificate chain revocation state.
*
* @type { ?Array<CertCRLCollection> }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
certCRLs?: Array<CertCRLCollection>;
/**
* The revocation parameters to verify the certificate chain revocation status.
*
* @type { ?RevocationCheckParameter }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
revocationCheckParam?: RevocationCheckParameter;
/**
* The policy to verify the certificate chain validity.
*
* @type { ?ValidationPolicyType }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
policy?: ValidationPolicyType;
/**
* The sslHostname to verify the certificate chain validity.
*
* @type { ?string }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
sslHostname?: string;
/**
* The keyUsage to verify the certificate chain validity.
*
* @type { ?Array<KeyUsageType> }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
keyUsage?: Array<KeyUsageType>;
}
/**
* Certification chain validate result.
*
* @typedef CertChainValidationResult
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* Certification chain validate result.
*
* @typedef CertChainValidationResult
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface CertChainValidationResult {
/**
* The cert chain trust anchor.
*
* @type { X509TrustAnchor }
* @readonly
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The cert chain trust anchor.
*
* @type { X509TrustAnchor }
* @readonly
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
readonly trustAnchor: X509TrustAnchor;
/**
* The target certificate.
*
* @type { X509Cert }
* @readonly
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @since 11
*/
/**
* The target certificate.
*
* @type { X509Cert }
* @readonly
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
readonly entityCert: X509Cert;
}
/**
* Provides the certificate chain build parameters type.
*
* @typedef CertChainBuildParameters
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface CertChainBuildParameters {
/**
* The certificate match parameters to selects certificate from the certificate collection.
*
* @type { X509CertMatchParameters }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
certMatchParameters: X509CertMatchParameters;
/**
* The maximum length of the certificate chain to be built.
*
* @type { ?number }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
maxLength?: number;
/**
* The CertChain validation parameters.
*
* @type { CertChainValidationParameters }
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
validationParameters: CertChainValidationParameters;
}
/**
* Certification chain build result.
*
* @typedef CertChainBuildResult
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
interface CertChainBuildResult {
/**
* The certificate chain of build result.
*
* @type { X509CertChain }
* @readonly
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
readonly certChain: X509CertChain;
/**
* The certificate chain validation result.
*
* @type { CertChainValidationResult }
* @readonly
* @syscap SystemCapability.Security.Cert
* @crossplatform
* @atomicservice
* @since 12
*/
readonly validationResult: CertChainValidationResult;
}
}
export default cert;
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/lffl8796/interface_sdk-js.git
git@gitee.com:lffl8796/interface_sdk-js.git
lffl8796
interface_sdk-js
interface_sdk-js
master

搜索帮助