Skip to main content
Deno 2 is finally here 🎉️
Learn more
Module

x/openpgp/docs/global.html

OpenPGP implementation for JavaScript
Latest
File
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287628862896290629162926293629462956296629762986299630063016302630363046305630663076308630963106311631263136314631563166317631863196320632163226323632463256326632763286329633063316332633363346335633663376338633963406341634263436344634563466347634863496350635163526353635463556356635763586359636063616362636363646365636663676368636963706371637263736374637563766377637863796380638163826383638463856386638763886389639063916392639363946395639663976398639964006401640264036404640564066407640864096410641164126413641464156416641764186419642064216422642364246425642664276428642964306431643264336434643564366437643864396440644164426443644464456446644764486449645064516452645364546455645664576458645964606461646264636464646564666467646864696470647164726473647464756476647764786479648064816482648364846485648664876488648964906491649264936494649564966497649864996500650165026503650465056506650765086509651065116512651365146515651665176518651965206521652265236524652565266527652865296530653165326533653465356536653765386539654065416542654365446545654665476548654965506551655265536554655565566557655865596560656165626563656465656566656765686569657065716572657365746575657665776578657965806581658265836584658565866587658865896590659165926593659465956596659765986599660066016602660366046605660666076608660966106611661266136614661566166617661866196620662166226623662466256626662766286629663066316632663366346635663666376638663966406641664266436644664566466647664866496650665166526653665466556656665766586659666066616662666366646665666666676668666966706671667266736674667566766677667866796680668166826683668466856686668766886689669066916692669366946695669666976698669967006701670267036704670567066707670867096710671167126713671467156716671767186719672067216722672367246725672667276728672967306731673267336734673567366737673867396740674167426743674467456746674767486749675067516752675367546755675667576758675967606761676267636764676567666767676867696770677167726773677467756776677767786779678067816782678367846785678667876788678967906791679267936794679567966797679867996800680168026803680468056806680768086809681068116812681368146815681668176818681968206821682268236824682568266827682868296830683168326833683468356836683768386839684068416842684368446845684668476848684968506851685268536854685568566857685868596860686168626863686468656866686768686869687068716872687368746875687668776878687968806881688268836884688568866887688868896890689168926893689468956896689768986899690069016902690369046905690669076908690969106911691269136914691569166917691869196920692169226923692469256926692769286929693069316932693369346935693669376938693969406941694269436944694569466947694869496950695169526953695469556956695769586959696069616962696369646965696669676968696969706971697269736974697569766977697869796980698169826983698469856986698769886989699069916992699369946995699669976998699970007001700270037004700570067007700870097010701170127013701470157016701770187019702070217022702370247025702670277028702970307031703270337034703570367037703870397040704170427043704470457046704770487049705070517052705370547055705670577058705970607061706270637064706570667067706870697070707170727073707470757076707770787079708070817082708370847085708670877088708970907091709270937094709570967097709870997100710171027103710471057106710771087109711071117112711371147115711671177118711971207121712271237124712571267127712871297130713171327133713471357136713771387139714071417142714371447145714671477148714971507151715271537154715571567157715871597160716171627163716471657166716771687169717071717172717371747175717671777178717971807181718271837184718571867187718871897190719171927193719471957196719771987199720072017202720372047205720672077208720972107211721272137214721572167217721872197220722172227223722472257226722772287229723072317232723372347235723672377238723972407241724272437244724572467247724872497250725172527253725472557256725772587259726072617262726372647265726672677268726972707271727272737274727572767277727872797280728172827283728472857286728772887289729072917292729372947295729672977298729973007301730273037304730573067307730873097310731173127313731473157316731773187319732073217322732373247325732673277328732973307331733273337334733573367337733873397340734173427343734473457346734773487349735073517352735373547355735673577358735973607361736273637364736573667367736873697370737173727373737473757376737773787379738073817382738373847385738673877388738973907391739273937394739573967397739873997400740174027403740474057406740774087409741074117412741374147415741674177418741974207421742274237424742574267427742874297430743174327433743474357436743774387439744074417442744374447445744674477448744974507451745274537454745574567457745874597460746174627463746474657466746774687469747074717472747374747475747674777478747974807481748274837484748574867487748874897490749174927493749474957496749774987499750075017502750375047505750675077508750975107511751275137514751575167517751875197520752175227523752475257526752775287529753075317532753375347535753675377538753975407541754275437544754575467547754875497550755175527553755475557556755775587559756075617562756375647565756675677568756975707571757275737574757575767577757875797580758175827583758475857586758775887589759075917592759375947595759675977598759976007601760276037604760576067607760876097610761176127613761476157616761776187619762076217622762376247625762676277628762976307631763276337634763576367637763876397640764176427643764476457646764776487649765076517652765376547655765676577658765976607661766276637664766576667667766876697670767176727673767476757676767776787679768076817682768376847685768676877688768976907691769276937694769576967697769876997700770177027703770477057706770777087709771077117712771377147715771677177718771977207721772277237724772577267727772877297730773177327733773477357736773777387739774077417742774377447745774677477748774977507751775277537754775577567757775877597760776177627763776477657766776777687769777077717772777377747775777677777778777977807781778277837784778577867787778877897790779177927793779477957796779777987799780078017802780378047805780678077808780978107811781278137814781578167817781878197820782178227823782478257826782778287829783078317832783378347835783678377838783978407841784278437844784578467847784878497850785178527853785478557856785778587859786078617862786378647865786678677868786978707871787278737874787578767877787878797880788178827883788478857886788778887889789078917892789378947895789678977898789979007901790279037904790579067907790879097910791179127913791479157916791779187919792079217922792379247925792679277928792979307931793279337934793579367937793879397940794179427943794479457946794779487949795079517952795379547955795679577958795979607961796279637964796579667967796879697970797179727973797479757976797779787979798079817982798379847985798679877988798979907991799279937994799579967997799879998000800180028003800480058006800780088009801080118012801380148015801680178018801980208021802280238024802580268027802880298030803180328033803480358036803780388039804080418042804380448045804680478048804980508051805280538054805580568057805880598060806180628063806480658066806780688069807080718072807380748075807680778078807980808081808280838084808580868087808880898090809180928093809480958096809780988099810081018102810381048105810681078108810981108111811281138114811581168117811881198120812181228123812481258126812781288129813081318132813381348135813681378138813981408141814281438144814581468147814881498150815181528153815481558156815781588159816081618162816381648165816681678168816981708171817281738174817581768177817881798180818181828183818481858186818781888189819081918192819381948195819681978198819982008201820282038204820582068207820882098210821182128213821482158216821782188219822082218222822382248225822682278228822982308231823282338234823582368237823882398240824182428243824482458246824782488249825082518252825382548255825682578258825982608261826282638264826582668267826882698270827182728273827482758276827782788279828082818282828382848285828682878288828982908291829282938294829582968297829882998300830183028303830483058306830783088309831083118312831383148315831683178318831983208321832283238324832583268327832883298330833183328333833483358336833783388339834083418342834383448345834683478348834983508351835283538354835583568357835883598360836183628363836483658366836783688369837083718372837383748375837683778378837983808381838283838384838583868387838883898390839183928393839483958396839783988399840084018402840384048405840684078408840984108411841284138414841584168417841884198420842184228423842484258426842784288429843084318432843384348435843684378438843984408441844284438444844584468447844884498450845184528453845484558456845784588459846084618462846384648465846684678468846984708471847284738474847584768477847884798480848184828483848484858486848784888489849084918492849384948495849684978498849985008501850285038504850585068507850885098510851185128513851485158516851785188519852085218522852385248525852685278528852985308531853285338534853585368537853885398540854185428543854485458546854785488549855085518552855385548555855685578558855985608561856285638564856585668567856885698570857185728573857485758576857785788579858085818582858385848585858685878588858985908591859285938594859585968597859885998600860186028603860486058606860786088609861086118612861386148615861686178618861986208621862286238624862586268627862886298630863186328633863486358636863786388639864086418642864386448645864686478648864986508651865286538654865586568657865886598660866186628663866486658666866786688669867086718672867386748675867686778678867986808681868286838684868586868687868886898690869186928693869486958696869786988699870087018702870387048705870687078708870987108711871287138714871587168717871887198720872187228723872487258726872787288729873087318732873387348735873687378738873987408741874287438744874587468747874887498750875187528753875487558756875787588759876087618762876387648765876687678768876987708771877287738774877587768777877887798780878187828783878487858786878787888789879087918792879387948795879687978798879988008801880288038804880588068807880888098810881188128813881488158816881788188819882088218822882388248825882688278828882988308831883288338834883588368837883888398840884188428843884488458846884788488849885088518852885388548855885688578858885988608861886288638864886588668867886888698870887188728873887488758876887788788879888088818882888388848885888688878888888988908891889288938894889588968897889888998900890189028903890489058906890789088909891089118912891389148915891689178918891989208921892289238924892589268927892889298930893189328933893489358936893789388939894089418942894389448945894689478948894989508951895289538954895589568957895889598960896189628963896489658966896789688969897089718972897389748975897689778978897989808981898289838984898589868987898889898990899189928993899489958996899789988999900090019002900390049005900690079008900990109011901290139014901590169017901890199020902190229023902490259026902790289029903090319032903390349035903690379038903990409041904290439044904590469047904890499050905190529053905490559056905790589059906090619062906390649065906690679068906990709071907290739074907590769077907890799080908190829083908490859086908790889089909090919092909390949095909690979098909991009101910291039104910591069107910891099110911191129113911491159116911791189119912091219122912391249125912691279128912991309131913291339134913591369137913891399140914191429143914491459146914791489149915091519152915391549155915691579158915991609161916291639164916591669167916891699170917191729173917491759176917791789179918091819182918391849185918691879188918991909191919291939194919591969197919891999200920192029203920492059206920792089209921092119212921392149215921692179218921992209221922292239224922592269227922892299230923192329233923492359236923792389239924092419242924392449245924692479248924992509251925292539254925592569257925892599260926192629263926492659266926792689269927092719272927392749275927692779278927992809281928292839284928592869287928892899290929192929293929492959296929792989299930093019302930393049305930693079308930993109311931293139314931593169317931893199320932193229323932493259326932793289329933093319332933393349335933693379338933993409341934293439344934593469347934893499350935193529353935493559356935793589359936093619362936393649365936693679368936993709371937293739374937593769377937893799380938193829383938493859386938793889389939093919392939393949395939693979398939994009401940294039404940594069407940894099410941194129413941494159416941794189419942094219422942394249425942694279428942994309431943294339434943594369437943894399440944194429443944494459446944794489449945094519452945394549455945694579458945994609461946294639464946594669467946894699470947194729473947494759476947794789479948094819482948394849485948694879488948994909491949294939494949594969497949894999500950195029503950495059506950795089509951095119512951395149515951695179518951995209521952295239524952595269527952895299530953195329533953495359536953795389539954095419542954395449545954695479548954995509551955295539554955595569557955895599560956195629563956495659566956795689569957095719572957395749575957695779578957995809581958295839584958595869587958895899590959195929593959495959596959795989599960096019602960396049605960696079608960996109611961296139614961596169617961896199620962196229623962496259626962796289629963096319632963396349635963696379638963996409641964296439644964596469647964896499650965196529653965496559656965796589659966096619662966396649665966696679668966996709671967296739674967596769677967896799680968196829683968496859686968796889689969096919692969396949695969696979698969997009701970297039704970597069707970897099710971197129713971497159716971797189719972097219722972397249725972697279728972997309731973297339734973597369737973897399740974197429743974497459746974797489749975097519752975397549755975697579758975997609761976297639764976597669767976897699770977197729773977497759776977797789779978097819782978397849785978697879788978997909791979297939794979597969797979897999800980198029803980498059806980798089809981098119812981398149815981698179818981998209821982298239824982598269827982898299830983198329833983498359836983798389839984098419842984398449845984698479848984998509851985298539854985598569857985898599860986198629863986498659866986798689869987098719872987398749875987698779878987998809881988298839884988598869887988898899890989198929893989498959896989798989899990099019902990399049905990699079908990999109911991299139914991599169917991899199920992199229923992499259926992799289929993099319932993399349935993699379938993999409941994299439944994599469947994899499950995199529953995499559956995799589959996099619962996399649965996699679968996999709971997299739974997599769977997899799980998199829983998499859986998799889989999099919992999399949995999699979998999910000100011000210003100041000510006100071000810009100101001110012100131001410015100161001710018100191002010021100221002310024100251002610027100281002910030100311003210033100341003510036100371003810039100401004110042100431004410045100461004710048100491005010051100521005310054100551005610057100581005910060100611006210063100641006510066100671006810069100701007110072100731007410075100761007710078100791008010081100821008310084100851008610087100881008910090100911009210093100941009510096100971009810099101001010110102101031010410105101061010710108101091011010111101121011310114101151011610117101181011910120101211012210123101241012510126101271012810129101301013110132101331013410135101361013710138101391014010141101421014310144101451014610147101481014910150101511015210153101541015510156101571015810159101601016110162101631016410165101661016710168101691017010171101721017310174101751017610177101781017910180101811018210183101841018510186101871018810189101901019110192101931019410195101961019710198101991020010201102021020310204102051020610207102081020910210102111021210213102141021510216102171021810219102201022110222102231022410225102261022710228102291023010231102321023310234102351023610237102381023910240102411024210243102441024510246102471024810249102501025110252102531025410255102561025710258102591026010261102621026310264102651026610267102681026910270102711027210273102741027510276102771027810279102801028110282102831028410285102861028710288102891029010291102921029310294102951029610297102981029910300103011030210303103041030510306103071030810309103101031110312103131031410315103161031710318103191032010321103221032310324103251032610327103281032910330103311033210333103341033510336103371033810339103401034110342103431034410345103461034710348103491035010351103521035310354103551035610357103581035910360103611036210363103641036510366103671036810369103701037110372103731037410375103761037710378103791038010381103821038310384103851038610387103881038910390103911039210393103941039510396103971039810399104001040110402104031040410405104061040710408104091041010411104121041310414104151041610417104181041910420104211042210423104241042510426104271042810429104301043110432104331043410435104361043710438104391044010441104421044310444104451044610447104481044910450104511045210453104541045510456104571045810459104601046110462104631046410465104661046710468104691047010471104721047310474104751047610477104781047910480104811048210483104841048510486104871048810489104901049110492104931049410495104961049710498104991050010501105021050310504105051050610507105081050910510105111051210513105141051510516105171051810519105201052110522105231052410525105261052710528105291053010531105321053310534105351053610537105381053910540105411054210543105441054510546105471054810549105501055110552105531055410555105561055710558105591056010561105621056310564105651056610567105681056910570105711057210573105741057510576105771057810579105801058110582105831058410585105861058710588105891059010591105921059310594105951059610597105981059910600106011060210603106041060510606106071060810609106101061110612106131061410615106161061710618106191062010621106221062310624106251062610627106281062910630106311063210633106341063510636106371063810639106401064110642106431064410645106461064710648106491065010651106521065310654106551065610657106581065910660106611066210663106641066510666106671066810669106701067110672106731067410675106761067710678106791068010681106821068310684106851068610687106881068910690106911069210693106941069510696106971069810699107001070110702107031070410705107061070710708107091071010711107121071310714107151071610717107181071910720107211072210723107241072510726107271072810729107301073110732107331073410735107361073710738107391074010741107421074310744107451074610747107481074910750107511075210753107541075510756107571075810759107601076110762107631076410765107661076710768107691077010771107721077310774107751077610777107781077910780107811078210783107841078510786107871078810789107901079110792107931079410795107961079710798107991080010801108021080310804108051080610807108081080910810108111081210813108141081510816108171081810819108201082110822108231082410825108261082710828108291083010831108321083310834108351083610837108381083910840108411084210843108441084510846108471084810849108501085110852108531085410855108561085710858108591086010861108621086310864108651086610867108681086910870108711087210873108741087510876108771087810879108801088110882108831088410885108861088710888108891089010891108921089310894108951089610897108981089910900109011090210903109041090510906109071090810909109101091110912109131091410915109161091710918109191092010921109221092310924109251092610927109281092910930109311093210933109341093510936109371093810939109401094110942109431094410945109461094710948109491095010951109521095310954109551095610957109581095910960109611096210963109641096510966109671096810969109701097110972109731097410975109761097710978109791098010981109821098310984109851098610987109881098910990109911099210993109941099510996109971099810999110001100111002110031100411005110061100711008110091101011011110121101311014110151101611017110181101911020110211102211023110241102511026110271102811029110301103111032110331103411035110361103711038110391104011041110421104311044110451104611047110481104911050110511105211053110541105511056110571105811059110601106111062110631106411065110661106711068110691107011071110721107311074110751107611077110781107911080110811108211083110841108511086110871108811089110901109111092110931109411095110961109711098110991110011101111021110311104111051110611107111081110911110111111111211113111141111511116111171111811119111201112111122111231112411125111261112711128111291113011131111321113311134111351113611137111381113911140111411114211143111441114511146111471114811149111501115111152111531115411155111561115711158111591116011161111621116311164111651116611167111681116911170111711117211173111741117511176111771117811179111801118111182111831118411185111861118711188111891119011191111921119311194111951119611197111981119911200112011120211203112041120511206112071120811209112101121111212112131121411215112161121711218112191122011221112221122311224112251122611227112281122911230112311123211233112341123511236112371123811239112401124111242112431124411245112461124711248112491125011251112521125311254112551125611257112581125911260112611126211263112641126511266112671126811269112701127111272112731127411275112761127711278112791128011281112821128311284112851128611287112881128911290112911129211293112941129511296112971129811299113001130111302113031130411305113061130711308113091131011311113121131311314113151131611317113181131911320113211132211323113241132511326113271132811329113301133111332113331133411335113361133711338113391134011341113421134311344113451134611347113481134911350113511135211353113541135511356113571135811359113601136111362113631136411365113661136711368113691137011371113721137311374113751137611377113781137911380113811138211383113841138511386113871138811389113901139111392113931139411395113961139711398113991140011401114021140311404114051140611407114081140911410114111141211413114141141511416114171141811419114201142111422114231142411425114261142711428114291143011431114321143311434114351143611437114381143911440114411144211443114441144511446114471144811449114501145111452114531145411455114561145711458114591146011461114621146311464114651146611467114681146911470114711147211473114741147511476114771147811479114801148111482114831148411485114861148711488114891149011491114921149311494114951149611497114981149911500115011150211503115041150511506115071150811509115101151111512115131151411515115161151711518115191152011521115221152311524115251152611527115281152911530115311153211533115341153511536115371153811539115401154111542115431154411545115461154711548115491155011551115521155311554115551155611557115581155911560115611156211563115641156511566115671156811569115701157111572115731157411575115761157711578115791158011581115821158311584115851158611587115881158911590115911159211593115941159511596115971159811599116001160111602116031160411605116061160711608116091161011611116121161311614116151161611617116181161911620116211162211623116241162511626116271162811629116301163111632116331163411635116361163711638116391164011641116421164311644116451164611647116481164911650116511165211653116541165511656116571165811659
<!DOCTYPE html><html lang="en"><head> <meta charset="utf-8"> <title>JSDoc: Global</title> <script src="scripts/prettify/prettify.js"> </script> <script src="scripts/prettify/lang-css.js"> </script> <!--[if lt IE 9]> <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script> <![endif]--> <link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css"> <link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css"></head><body><div id="main"> <h1 class="page-title">Global</h1>


<section><header> <h2></h2> </header><article> <div class="container-overview">
<dl class="details"> </dl>
</div> <h3 class="subsection-title">Methods</h3> <h4 class="name" id="armor"><span class="type-signature"></span>armor<span class="signature">(messageType, body, partIndex<span class="signature-attributes">opt</span>, partTotal<span class="signature-attributes">opt</span>, customComment<span class="signature-attributes">opt</span>, emitChecksum<span class="signature-attributes">opt</span>, config<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {String|ReadableStream.&lt;String>}</span></h4>

<div class="description"> <p>Armor an OpenPGP binary packet block</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>messageType</code></td> <td class="type"> <span class="param-type"><a href="module-enums.html#.armor">module:enums.armor</a></span>
</td> <td class="attributes"> </td> <td class="description last"><p>Type of the message</p></td> </tr> <tr> <td class="name"><code>body</code></td> <td class="type"> <span class="param-type">Uint8Array</span>|
<span class="param-type">ReadableStream.&lt;Uint8Array></span>
</td> <td class="attributes"> </td> <td class="description last"><p>The message body to armor</p></td> </tr> <tr> <td class="name"><code>partIndex</code></td> <td class="type"> <span class="param-type">Integer</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"></td> </tr> <tr> <td class="name"><code>partTotal</code></td> <td class="type"> <span class="param-type">Integer</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"></td> </tr> <tr> <td class="name"><code>customComment</code></td> <td class="type"> <span class="param-type">String</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Additional comment to add to the armored string</p></td> </tr> <tr> <td class="name"><code>emitChecksum</code></td> <td class="type"> <span class="param-type">Boolean</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Whether to compute and include the CRC checksum(NB: some types of data must not include it, but compliance is left as responsibility of the caller: this function does not carry out any checks)</p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Full configuration, defaults to openpgp.config</p></td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/encoding/armor.js">encoding/armor.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/encoding/armor.js#L343">line 343</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>Armored text.</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">String</span>|
<span class="param-type">ReadableStream.&lt;String></span>
</dd></dl>



<h4 class="name" id="createCleartextMessage"><span class="type-signature">(async) </span>createCleartextMessage<span class="signature">(options)</span><span class="type-signature"></span></h4>

<div class="description"> <p>Creates a new CleartextMessage object from text</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>text</code></td> <td class="type"> <span class="param-type">String</span>
</td> <td class="description last"></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/cleartext.js">cleartext.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/cleartext.js#L212">line 212</a> </li></ul></dd> </dl>


















<h4 class="name" id="createKey"><span class="type-signature"></span>createKey<span class="signature">(packetlist)</span><span class="type-signature"> &rarr; {<a href="Key.html">Key</a>}</span></h4>

<div class="description"> <p>Creates a PublicKey or PrivateKey depending on the packetlist in input</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>packetlist</code></td> <td class="type"> <span class="param-type"><a href="PacketList.html">PacketList</a></span>
</td> <td class="description last"><p>packets to parse</p></td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/key/factory.js">key/factory.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/key/factory.js#L53">line 53</a> </li></ul></dd> </dl>











<h5>Throws:</h5> <div class="param-desc"> <p>if no key packet was found</p> </div>

<h5>Returns:</h5> <div class="param-desc"> <p>parsed key</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type"><a href="Key.html">Key</a></span>
</dd></dl>



<h4 class="name" id="createMessage"><span class="type-signature">(async) </span>createMessage<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;<a href="Message.html">Message</a>>}</span></h4>

<div class="description"> <p>Creates new message object from text or binary data.</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th>Default</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>text</code></td> <td class="type"> <span class="param-type">String</span>|
<span class="param-type">ReadableStream.&lt;String></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>The text message contents</p></td> </tr> <tr> <td class="name"><code>binary</code></td> <td class="type"> <span class="param-type">Uint8Array</span>|
<span class="param-type">ReadableStream.&lt;Uint8Array></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>The binary message contents</p></td> </tr> <tr> <td class="name"><code>filename</code></td> <td class="type"> <span class="param-type">String</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> "" </td> <td class="description last"><p>Name of the file (if any)</p></td> </tr> <tr> <td class="name"><code>date</code></td> <td class="type"> <span class="param-type">Date</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> current date </td> <td class="description last"><p>Date of the message, or modification date of the file</p></td> </tr> <tr> <td class="name"><code>format</code></td> <td class="type"> <span class="param-type">'utf8'</span>|
<span class="param-type">'binary'</span>|
<span class="param-type">'text'</span>|
<span class="param-type">'mime'</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> 'utf8' if text is passed, 'binary' otherwise </td> <td class="description last"><p>Data packet type</p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/message.js">message.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/message.js#L892">line 892</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>New message object.</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;<a href="Message.html">Message</a>></span>
</dd></dl>



<h4 class="name" id="decrypt"><span class="type-signature">(async) </span>decrypt<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;Object>}</span></h4>

<div class="description"> <p>Decrypts a message with the user's private key, a session key or a password.One of <code>decryptionKeys</code>, <code>sessionkeys</code> or <code>passwords</code> must be specified (passing a combination of these options is not supported).</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th>Default</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>message</code></td> <td class="type"> <span class="param-type"><a href="Message.html">Message</a></span>
</td> <td class="attributes"> </td> <td class="default"> </td> <td class="description last"><p>The message object with the encrypted data</p></td> </tr> <tr> <td class="name"><code>decryptionKeys</code></td> <td class="type"> <span class="param-type"><a href="PrivateKey.html">PrivateKey</a></span>|
<span class="param-type">Array.&lt;<a href="PrivateKey.html">PrivateKey</a>></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Private keys with decrypted secret key data or session key</p></td> </tr> <tr> <td class="name"><code>passwords</code></td> <td class="type"> <span class="param-type">String</span>|
<span class="param-type">Array.&lt;String></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Passwords to decrypt the message</p></td> </tr> <tr> <td class="name"><code>sessionKeys</code></td> <td class="type"> <span class="param-type">Object</span>|
<span class="param-type">Array.&lt;Object></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Session keys in the form: { data:Uint8Array, algorithm:String }</p></td> </tr> <tr> <td class="name"><code>verificationKeys</code></td> <td class="type"> <span class="param-type"><a href="PublicKey.html">PublicKey</a></span>|
<span class="param-type">Array.&lt;<a href="PublicKey.html">PublicKey</a>></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Array of public keys or single key, to verify signatures</p></td> </tr> <tr> <td class="name"><code>expectSigned</code></td> <td class="type"> <span class="param-type">Boolean</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> false </td> <td class="description last"><p>If true, data decryption fails if the message is not signed with the provided publicKeys</p></td> </tr> <tr> <td class="name"><code>format</code></td> <td class="type"> <span class="param-type">'utf8'</span>|
<span class="param-type">'binary'</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> 'utf8' </td> <td class="description last"><p>Whether to return data as a string(Stream) or Uint8Array(Stream). If 'utf8' (the default), also normalize newlines.</p></td> </tr> <tr> <td class="name"><code>signature</code></td> <td class="type"> <span class="param-type"><a href="Signature.html">Signature</a></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Detached signature for verification</p></td> </tr> <tr> <td class="name"><code>date</code></td> <td class="type"> <span class="param-type">Date</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> current date </td> <td class="description last"><p>Use the given date for verification instead of the current time</p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js">openpgp.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js#L343">line 343</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>Object containing decrypted and verified message in the form:</p><pre><code>{ data: MaybeStream&lt;String&gt;, (if format was 'utf8', the default) data: MaybeStream&lt;Uint8Array&gt;, (if format was 'binary') filename: String, signatures: [ { keyID: module:type/keyid~KeyID, verified: Promise&lt;true&gt;, signature: Promise&lt;Signature&gt; }, ... ]}
where `signatures` contains a separate entry for each signature packet found in the input message.</code></pre></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;Object></span>
</dd></dl>



<h4 class="name" id="decryptKey"><span class="type-signature">(async) </span>decryptKey<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;<a href="PrivateKey.html">PrivateKey</a>>}</span></h4>

<div class="description"> <p>Unlock a private key with the given passphrase.This method does not change the original key.</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>privateKey</code></td> <td class="type"> <span class="param-type"><a href="PrivateKey.html">PrivateKey</a></span>
</td> <td class="attributes"> </td> <td class="description last"><p>The private key to decrypt</p></td> </tr> <tr> <td class="name"><code>passphrase</code></td> <td class="type"> <span class="param-type">String</span>|
<span class="param-type">Array.&lt;String></span>
</td> <td class="attributes"> </td> <td class="description last"><p>The user's passphrase(s)</p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js">openpgp.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js#L181">line 181</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>The unlocked key object.</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;<a href="PrivateKey.html">PrivateKey</a>></span>
</dd></dl>



<h4 class="name" id="decryptSessionKeys"><span class="type-signature">(async) </span>decryptSessionKeys<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;Array.&lt;Object>>}</span></h4>

<div class="description"> <p>Decrypt symmetric session keys using private keys or passwords (not both).One of <code>decryptionKeys</code> or <code>passwords</code> must be specified.</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>message</code></td> <td class="type"> <span class="param-type"><a href="Message.html">Message</a></span>
</td> <td class="attributes"> </td> <td class="description last"><p>A message object containing the encrypted session key packets</p></td> </tr> <tr> <td class="name"><code>decryptionKeys</code></td> <td class="type"> <span class="param-type"><a href="PrivateKey.html">PrivateKey</a></span>|
<span class="param-type">Array.&lt;<a href="PrivateKey.html">PrivateKey</a>></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Private keys with decrypted secret key data</p></td> </tr> <tr> <td class="name"><code>passwords</code></td> <td class="type"> <span class="param-type">String</span>|
<span class="param-type">Array.&lt;String></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Passwords to decrypt the session key</p></td> </tr> <tr> <td class="name"><code>date</code></td> <td class="type"> <span class="param-type">Date</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Date to use for key verification instead of the current time</p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js">openpgp.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js#L596">line 596</a> </li></ul></dd> </dl>











<h5>Throws:</h5> <div class="param-desc"> <p>if no session key could be found or decrypted</p> </div>

<h5>Returns:</h5> <div class="param-desc"> <p>Array of decrypted session key, algorithm pairs in the form:{ data:Uint8Array, algorithm:String }</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;Array.&lt;Object>></span>
</dd></dl>



<h4 class="name" id="encrypt"><span class="type-signature">(async) </span>encrypt<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;(MaybeStream.&lt;String>|MaybeStream.&lt;Uint8Array>)>}</span></h4>

<div class="description"> <p>Encrypts a message using public keys, passwords or both at once. At least one of <code>encryptionKeys</code>, <code>passwords</code> or <code>sessionKeys</code>must be specified. If signing keys are specified, those will be used to sign the message.</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th>Default</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>message</code></td> <td class="type"> <span class="param-type"><a href="Message.html">Message</a></span>
</td> <td class="attributes"> </td> <td class="default"> </td> <td class="description last"><p>Message to be encrypted as created by <a href="global.html#createMessage">createMessage</a></p></td> </tr> <tr> <td class="name"><code>encryptionKeys</code></td> <td class="type"> <span class="param-type"><a href="PublicKey.html">PublicKey</a></span>|
<span class="param-type">Array.&lt;<a href="PublicKey.html">PublicKey</a>></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Array of keys or single key, used to encrypt the message</p></td> </tr> <tr> <td class="name"><code>signingKeys</code></td> <td class="type"> <span class="param-type"><a href="PrivateKey.html">PrivateKey</a></span>|
<span class="param-type">Array.&lt;<a href="PrivateKey.html">PrivateKey</a>></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Private keys for signing. If omitted message will not be signed</p></td> </tr> <tr> <td class="name"><code>passwords</code></td> <td class="type"> <span class="param-type">String</span>|
<span class="param-type">Array.&lt;String></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Array of passwords or a single password to encrypt the message</p></td> </tr> <tr> <td class="name"><code>sessionKey</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Session key in the form: <code>{ data:Uint8Array, algorithm:String }</code></p></td> </tr> <tr> <td class="name"><code>format</code></td> <td class="type"> <span class="param-type">'armored'</span>|
<span class="param-type">'binary'</span>|
<span class="param-type">'object'</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> 'armored' </td> <td class="description last"><p>Format of the returned message</p></td> </tr> <tr> <td class="name"><code>signature</code></td> <td class="type"> <span class="param-type"><a href="Signature.html">Signature</a></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>A detached signature to add to the encrypted message</p></td> </tr> <tr> <td class="name"><code>wildcard</code></td> <td class="type"> <span class="param-type">Boolean</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> false </td> <td class="description last"><p>Use a key ID of 0 instead of the public key IDs</p></td> </tr> <tr> <td class="name"><code>signingKeyIDs</code></td> <td class="type"> <span class="param-type">KeyID</span>|
<span class="param-type">Array.&lt;KeyID></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> latest-created valid signing (sub)keys </td> <td class="description last"><p>Array of key IDs to use for signing. Each <code>signingKeyIDs[i]</code> corresponds to <code>signingKeys[i]</code></p></td> </tr> <tr> <td class="name"><code>encryptionKeyIDs</code></td> <td class="type"> <span class="param-type">KeyID</span>|
<span class="param-type">Array.&lt;KeyID></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> latest-created valid encryption (sub)keys </td> <td class="description last"><p>Array of key IDs to use for encryption. Each <code>encryptionKeyIDs[i]</code> corresponds to <code>encryptionKeys[i]</code></p></td> </tr> <tr> <td class="name"><code>date</code></td> <td class="type"> <span class="param-type">Date</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> current date </td> <td class="description last"><p>Override the creation date of the message signature</p></td> </tr> <tr> <td class="name"><code>signingUserIDs</code></td> <td class="type"> <span class="param-type">Object</span>|
<span class="param-type">Array.&lt;Object></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> primary user IDs </td> <td class="description last"><p>Array of user IDs to sign with, one per key in <code>signingKeys</code>, e.g. <code>[{ name: 'Steve Sender', email: 'steve@openpgp.org' }]</code></p></td> </tr> <tr> <td class="name"><code>encryptionUserIDs</code></td> <td class="type"> <span class="param-type">Object</span>|
<span class="param-type">Array.&lt;Object></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> primary user IDs </td> <td class="description last"><p>Array of user IDs to encrypt for, one per key in <code>encryptionKeys</code>, e.g. <code>[{ name: 'Robert Receiver', email: 'robert@openpgp.org' }]</code></p></td> </tr> <tr> <td class="name"><code>signatureNotations</code></td> <td class="type"> <span class="param-type">Object</span>|
<span class="param-type">Array.&lt;Object></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> [] </td> <td class="description last"><p>Array of notations to add to the signatures, e.g. <code>[{ name: 'test@example.org', value: new TextEncoder().encode('test'), humanReadable: true, critical: false }]</code></p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js">openpgp.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js#L274">line 274</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>Encrypted message (string if <code>armor</code> was true, the default; Uint8Array if <code>armor</code> was false).</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;(MaybeStream.&lt;String>|MaybeStream.&lt;Uint8Array>)></span>
</dd></dl>



<h4 class="name" id="encryptKey"><span class="type-signature">(async) </span>encryptKey<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;<a href="PrivateKey.html">PrivateKey</a>>}</span></h4>

<div class="description"> <p>Lock a private key with the given passphrase.This method does not change the original key.</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>privateKey</code></td> <td class="type"> <span class="param-type"><a href="PrivateKey.html">PrivateKey</a></span>
</td> <td class="attributes"> </td> <td class="description last"><p>The private key to encrypt</p></td> </tr> <tr> <td class="name"><code>passphrase</code></td> <td class="type"> <span class="param-type">String</span>|
<span class="param-type">Array.&lt;String></span>
</td> <td class="attributes"> </td> <td class="description last"><p>If multiple passphrases, they should be in the same order as the packets each should encrypt</p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js">openpgp.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js#L215">line 215</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>The locked key object.</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;<a href="PrivateKey.html">PrivateKey</a>></span>
</dd></dl>



<h4 class="name" id="encryptSessionKey"><span class="type-signature">(async) </span>encryptSessionKey<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;(String|Uint8Array)>}</span></h4>

<div class="description"> <p>Encrypt a symmetric session key with public keys, passwords, or both at once.At least one of <code>encryptionKeys</code> or <code>passwords</code> must be specified.</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th>Default</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>data</code></td> <td class="type"> <span class="param-type">Uint8Array</span>
</td> <td class="attributes"> </td> <td class="default"> </td> <td class="description last"><p>The session key to be encrypted e.g. 16 random bytes (for aes128)</p></td> </tr> <tr> <td class="name"><code>algorithm</code></td> <td class="type"> <span class="param-type">String</span>
</td> <td class="attributes"> </td> <td class="default"> </td> <td class="description last"><p>Algorithm of the symmetric session key e.g. 'aes128' or 'aes256'</p></td> </tr> <tr> <td class="name"><code>aeadAlgorithm</code></td> <td class="type"> <span class="param-type">String</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>AEAD algorithm, e.g. 'eax' or 'ocb'</p></td> </tr> <tr> <td class="name"><code>encryptionKeys</code></td> <td class="type"> <span class="param-type"><a href="PublicKey.html">PublicKey</a></span>|
<span class="param-type">Array.&lt;<a href="PublicKey.html">PublicKey</a>></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Array of public keys or single key, used to encrypt the key</p></td> </tr> <tr> <td class="name"><code>passwords</code></td> <td class="type"> <span class="param-type">String</span>|
<span class="param-type">Array.&lt;String></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Passwords for the message</p></td> </tr> <tr> <td class="name"><code>format</code></td> <td class="type"> <span class="param-type">'armored'</span>|
<span class="param-type">'binary'</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> 'armored' </td> <td class="description last"><p>Format of the returned value</p></td> </tr> <tr> <td class="name"><code>wildcard</code></td> <td class="type"> <span class="param-type">Boolean</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> false </td> <td class="description last"><p>Use a key ID of 0 instead of the public key IDs</p></td> </tr> <tr> <td class="name"><code>encryptionKeyIDs</code></td> <td class="type"> <span class="param-type">KeyID</span>|
<span class="param-type">Array.&lt;KeyID></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> latest-created valid encryption (sub)keys </td> <td class="description last"><p>Array of key IDs to use for encryption. Each encryptionKeyIDs[i] corresponds to encryptionKeys[i]</p></td> </tr> <tr> <td class="name"><code>date</code></td> <td class="type"> <span class="param-type">Date</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> current date </td> <td class="description last"><p>Override the date</p></td> </tr> <tr> <td class="name"><code>encryptionUserIDs</code></td> <td class="type"> <span class="param-type">Object</span>|
<span class="param-type">Array.&lt;Object></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> primary user IDs </td> <td class="description last"><p>Array of user IDs to encrypt for, one per key in <code>encryptionKeys</code>, e.g. <code>[{ name: 'Phil Zimmermann', email: 'phil@openpgp.org' }]</code></p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js">openpgp.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js#L562">line 562</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>Encrypted session keys (string if <code>armor</code> was true, the default; Uint8Array if <code>armor</code> was false).</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;(String|Uint8Array)></span>
</dd></dl>



<h4 class="name" id="formatObject"><span class="type-signature"></span>formatObject<span class="signature">(object, format, config)</span><span class="type-signature"> &rarr; {String|Uint8Array|Object}</span></h4>

<div class="description"> <p>Convert the object to the given format</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>object</code></td> <td class="type"> <span class="param-type"><a href="Key.html">Key</a></span>|
<span class="param-type"><a href="Message.html">Message</a></span>
</td> <td class="description last"></td> </tr> <tr> <td class="name"><code>format</code></td> <td class="type"> <span class="param-type">'armored'</span>|
<span class="param-type">'binary'</span>|
<span class="param-type">'object'</span>
</td> <td class="description last"></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"><p>Full configuration</p></td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js">openpgp.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js#L718">line 718</a> </li></ul></dd> </dl>













<h5>Returns:</h5>
<dl> <dt> Type </dt> <dd> <span class="param-type">String</span>|
<span class="param-type">Uint8Array</span>|
<span class="param-type">Object</span>
</dd></dl>



<h4 class="name" id="generateKey"><span class="type-signature">(async) </span>generateKey<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;Object>}</span></h4>

<div class="description"> <p>Generates a new OpenPGP key pair. Supports RSA and ECC keys, as well as the newer Curve448 and Curve25519 keys.By default, primary and subkeys will be of same type.The generated primary key will have signing capabilities. By default, one subkey with encryption capabilities is also generated.</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th>Default</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>userIDs</code></td> <td class="type"> <span class="param-type">Object</span>|
<span class="param-type">Array.&lt;Object></span>
</td> <td class="attributes"> </td> <td class="default"> </td> <td class="description last"><p>User IDs as objects: <code>{ name: 'Jo Doe', email: 'info@jo.com' }</code></p></td> </tr> <tr> <td class="name"><code>type</code></td> <td class="type"> <span class="param-type">'ecc'</span>|
<span class="param-type">'rsa'</span>|
<span class="param-type">'curve448'</span>|
<span class="param-type">'curve25519'</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> 'ecc' </td> <td class="description last"><p>The primary key algorithm type: ECC (default for v4 keys), RSA, Curve448 or Curve25519 (new format, default for v6 keys).Note: Curve448 and Curve25519 (new format) are not widely supported yet.</p></td> </tr> <tr> <td class="name"><code>passphrase</code></td> <td class="type"> <span class="param-type">String</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> (not protected) </td> <td class="description last"><p>The passphrase used to encrypt the generated private key. If omitted or empty, the key won't be encrypted.</p></td> </tr> <tr> <td class="name"><code>rsaBits</code></td> <td class="type"> <span class="param-type">Number</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> 4096 </td> <td class="description last"><p>Number of bits for RSA keys</p></td> </tr> <tr> <td class="name"><code>curve</code></td> <td class="type"> <span class="param-type">String</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> 'curve25519Legacy' </td> <td class="description last"><p>Elliptic curve for ECC keys:curve25519Legacy (default), nistP256, nistP384, nistP521, secp256k1,brainpoolP256r1, brainpoolP384r1, or brainpoolP512r1</p></td> </tr> <tr> <td class="name"><code>date</code></td> <td class="type"> <span class="param-type">Date</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> current date </td> <td class="description last"><p>Override the creation date of the key and the key signatures</p></td> </tr> <tr> <td class="name"><code>keyExpirationTime</code></td> <td class="type"> <span class="param-type">Number</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> 0 (never expires) </td> <td class="description last"><p>Number of seconds from the key creation time after which the key expires</p></td> </tr> <tr> <td class="name"><code>subkeys</code></td> <td class="type"> <span class="param-type">Array.&lt;Object></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> a single encryption subkey </td> <td class="description last"><p>Options for each subkey e.g. <code>[{sign: true, passphrase: '123'}]</code>default to main key options, except for <code>sign</code> parameter that defaults to false, and indicates whether the subkey should sign rather than encrypt</p></td> </tr> <tr> <td class="name"><code>format</code></td> <td class="type"> <span class="param-type">'armored'</span>|
<span class="param-type">'binary'</span>|
<span class="param-type">'object'</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> 'armored' </td> <td class="description last"><p>format of the output keys</p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js">openpgp.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js#L58">line 58</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>The generated key object in the form:{ privateKey:PrivateKey|Uint8Array|String, publicKey:PublicKey|Uint8Array|String, revocationCertificate:String }</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;Object></span>
</dd></dl>



<h4 class="name" id="generateSessionKey"><span class="type-signature">(async) </span>generateSessionKey<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;{data: Uint8Array, algorithm: String}>}</span></h4>

<div class="description"> <p>Generate a new session key object, taking the algorithm preferences of the passed public keys into account, if any.</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th>Default</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>encryptionKeys</code></td> <td class="type"> <span class="param-type"><a href="PublicKey.html">PublicKey</a></span>|
<span class="param-type">Array.&lt;<a href="PublicKey.html">PublicKey</a>></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Array of public keys or single key used to select algorithm preferences for. If no keys are given, the algorithm will be <a href="module-config.html#.preferredSymmetricAlgorithm">config.preferredSymmetricAlgorithm</a></p></td> </tr> <tr> <td class="name"><code>date</code></td> <td class="type"> <span class="param-type">Date</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> current date </td> <td class="description last"><p>Date to select algorithm preferences at</p></td> </tr> <tr> <td class="name"><code>encryptionUserIDs</code></td> <td class="type"> <span class="param-type">Object</span>|
<span class="param-type">Array.&lt;Object></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> primary user IDs </td> <td class="description last"><p>User IDs to select algorithm preferences for</p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js">openpgp.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js#L529">line 529</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>Object with session key data and algorithm.</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;{data: Uint8Array, algorithm: String}></span>
</dd></dl>



<h4 class="name" id="getCipherBlockSize"><span class="type-signature"></span>getCipherBlockSize<span class="signature">(algo)</span><span class="type-signature"></span></h4>

<div class="description"> <p>Get block size for given cipher algo</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>algo</code></td> <td class="type"> <span class="param-type"><a href="module-enums.html#.symmetric">module:enums.symmetric</a></span>
</td> <td class="description last"><p>alrogithm identifier</p></td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/crypto/cipher/index.js">crypto/cipher/index.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/crypto/cipher/index.js#L29">line 29</a> </li></ul></dd> </dl>


















<h4 class="name" id="getCipherKeySize"><span class="type-signature"></span>getCipherKeySize<span class="signature">(algo)</span><span class="type-signature"></span></h4>

<div class="description"> <p>Get key size for given cipher algo</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>algo</code></td> <td class="type"> <span class="param-type"><a href="module-enums.html#.symmetric">module:enums.symmetric</a></span>
</td> <td class="description last"><p>alrogithm identifier</p></td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/crypto/cipher/index.js">crypto/cipher/index.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/crypto/cipher/index.js#L49">line 49</a> </li></ul></dd> </dl>


















<h4 class="name" id="getCipherParams"><span class="type-signature"></span>getCipherParams<span class="signature">(algo)</span><span class="type-signature"></span></h4>

<div class="description"> <p>Get block and key size for given cipher algo</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>algo</code></td> <td class="type"> <span class="param-type"><a href="module-enums.html#.symmetric">module:enums.symmetric</a></span>
</td> <td class="description last"><p>alrogithm identifier</p></td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/crypto/cipher/index.js">crypto/cipher/index.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/crypto/cipher/index.js#L70">line 70</a> </li></ul></dd> </dl>


















<h4 class="name" id="getCompressionStreamInstantiators"><span class="type-signature"></span>getCompressionStreamInstantiators<span class="signature">(compressionFormat)</span><span class="type-signature"> &rarr; {Object}</span></h4>

<div class="description"> <p>Get Compression Stream API instatiators if the constructors are implemented.NB: the return instatiator functions will throw when called if the provided <code>compressionFormat</code> is not supported(supported formats cannot be determined in advance).</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>compressionFormat</code></td> <td class="type"> <span class="param-type">'deflate-raw'</span>|
<span class="param-type">'deflate'</span>|
<span class="param-type">'gzip'</span>|
<span class="param-type">string</span>
</td> <td class="description last"></td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/packet/compressed_data.js">packet/compressed_data.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/packet/compressed_data.js#L218">line 218</a> </li></ul></dd> </dl>













<h5>Returns:</h5>
<dl> <dt> Type </dt> <dd> <span class="param-type">Object</span>
</dd></dl>



<h4 class="name" id="newPacketFromTag"><span class="type-signature"></span>newPacketFromTag<span class="signature">(tag, allowedPackets)</span><span class="type-signature"> &rarr; {Object}</span></h4>

<div class="description"> <p>Instantiate a new packet given its tag</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>tag</code></td> <td class="type"> <span class="param-type"><a href="module-enums.html#.packet">module:enums.packet</a></span>
</td> <td class="description last"><p>Property value from <a href="module-enums.html#.packet">module:enums.packet</a></p></td> </tr> <tr> <td class="name"><code>allowedPackets</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"><p>mapping where keys are allowed packet tags, pointing to their Packet class</p></td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/packet/packetlist.js">packet/packetlist.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/packet/packetlist.js#L14">line 14</a> </li></ul></dd> </dl>











<h5>Throws:</h5> <dl> <dt> <div class="param-desc"> <p>for disallowed or unknown packets</p> </div> </dt> <dd></dd> <dt> <dl> <dt> Type </dt> <dd> <span class="param-type">Error</span>|
<span class="param-type">UnsupportedError</span>
</dd> </dl> </dt> <dd></dd></dl>

<h5>Returns:</h5> <div class="param-desc"> <p>New packet object with type based on tag</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Object</span>
</dd></dl>



<h4 class="name" id="newS2KFromConfig"><span class="type-signature"></span>newS2KFromConfig<span class="signature">()</span><span class="type-signature"> &rarr; {Object}</span></h4>

<div class="description"> <p>Instantiate a new S2K instance based on the config settings</p></div>











<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/type/s2k/index.js">type/s2k/index.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/type/s2k/index.js#L36">line 36</a> </li></ul></dd> </dl>











<h5>Throws:</h5> <dl> <dt> <div class="param-desc"> <p>for unknown or unsupported types</p> </div> </dt> <dd></dd> <dt> <dl> <dt> Type </dt> <dd> <span class="param-type">Error</span>
</dd> </dl> </dt> <dd></dd></dl>

<h5>Returns:</h5> <div class="param-desc"> <p>New s2k object</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Object</span>
</dd></dl>



<h4 class="name" id="newS2KFromType"><span class="type-signature"></span>newS2KFromType<span class="signature">(type)</span><span class="type-signature"> &rarr; {Object}</span></h4>

<div class="description"> <p>Instantiate a new S2K instance of the given type</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>type</code></td> <td class="type"> <span class="param-type"><a href="module-enums.html#.s2k">module:enums.s2k</a></span>
</td> <td class="description last"></td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/type/s2k/index.js">type/s2k/index.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/type/s2k/index.js#L16">line 16</a> </li></ul></dd> </dl>











<h5>Throws:</h5> <dl> <dt> <div class="param-desc"> <p>for unknown or unsupported types</p> </div> </dt> <dd></dd> <dt> <dl> <dt> Type </dt> <dd> <span class="param-type">Error</span>
</dd> </dl> </dt> <dd></dd></dl>

<h5>Returns:</h5> <div class="param-desc"> <p>New s2k object</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Object</span>
</dd></dl>



<h4 class="name" id="produceEncryptionKey"><span class="type-signature">(async) </span>produceEncryptionKey<span class="signature">(keyVersion, s2k, passphrase, cipherAlgo, aeadMode<span class="signature-attributes">opt</span>, serializedPacketTag<span class="signature-attributes">opt</span>, isLegacyAEAD<span class="signature-attributes">opt</span>)</span><span class="type-signature"></span></h4>

<div class="description"> <p>Derive encryption key</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>keyVersion</code></td> <td class="type"> <span class="param-type">Number</span>
</td> <td class="attributes"> </td> <td class="description last"><p>key derivation differs for v5 keys</p></td> </tr> <tr> <td class="name"><code>s2k</code></td> <td class="type"> <span class="param-type"><a href="module-type_s2k.html">module:type/s2k</a></span>
</td> <td class="attributes"> </td> <td class="description last"></td> </tr> <tr> <td class="name"><code>passphrase</code></td> <td class="type"> <span class="param-type">String</span>
</td> <td class="attributes"> </td> <td class="description last"></td> </tr> <tr> <td class="name"><code>cipherAlgo</code></td> <td class="type"> <span class="param-type"><a href="module-enums.html#.symmetric">module:enums.symmetric</a></span>
</td> <td class="attributes"> </td> <td class="description last"></td> </tr> <tr> <td class="name"><code>aeadMode</code></td> <td class="type"> <span class="param-type"><a href="module-enums.html#.aead">module:enums.aead</a></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>for AEAD-encrypted keys only (excluding v5)</p></td> </tr> <tr> <td class="name"><code>serializedPacketTag</code></td> <td class="type"> <span class="param-type">Uint8Array</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>for AEAD-encrypted keys only (excluding v5)</p></td> </tr> <tr> <td class="name"><code>isLegacyAEAD</code></td> <td class="type"> <span class="param-type">Boolean</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>for AEAD-encrypted keys from RFC4880bis (v4 and v5 only)</p></td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/packet/secret_key.js">packet/secret_key.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/packet/secret_key.js#L570">line 570</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>encryption key</p></div>





<h4 class="name" id="readCleartextMessage"><span class="type-signature">(async) </span>readCleartextMessage<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;<a href="CleartextMessage.html">CleartextMessage</a>>}</span></h4>

<div class="description"> <p>Reads an OpenPGP cleartext signed message and returns a CleartextMessage object</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>cleartextMessage</code></td> <td class="type"> <span class="param-type">String</span>
</td> <td class="attributes"> </td> <td class="description last"><p>Text to be parsed</p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/cleartext.js">cleartext.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/cleartext.js#L142">line 142</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>New cleartext message object.</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;<a href="CleartextMessage.html">CleartextMessage</a>></span>
</dd></dl>



<h4 class="name" id="readKey"><span class="type-signature">(async) </span>readKey<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;<a href="Key.html">Key</a>>}</span></h4>

<div class="description"> <p>Reads an (optionally armored) OpenPGP key and returns a key object</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>armoredKey</code></td> <td class="type"> <span class="param-type">String</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Armored key to be parsed</p></td> </tr> <tr> <td class="name"><code>binaryKey</code></td> <td class="type"> <span class="param-type">Uint8Array</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Binary key to be parsed</p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/key/factory.js">key/factory.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/key/factory.js#L319">line 319</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>Key object.</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;<a href="Key.html">Key</a>></span>
</dd></dl>



<h4 class="name" id="readKeys"><span class="type-signature">(async) </span>readKeys<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;Array.&lt;<a href="Key.html">Key</a>>>}</span></h4>

<div class="description"> <p>Reads an (optionally armored) OpenPGP key block and returns a list of key objects</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>armoredKeys</code></td> <td class="type"> <span class="param-type">String</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Armored keys to be parsed</p></td> </tr> <tr> <td class="name"><code>binaryKeys</code></td> <td class="type"> <span class="param-type">Uint8Array</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Binary keys to be parsed</p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/key/factory.js">key/factory.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/key/factory.js#L406">line 406</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>Key objects.</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;Array.&lt;<a href="Key.html">Key</a>>></span>
</dd></dl>



<h4 class="name" id="readMessage"><span class="type-signature">(async) </span>readMessage<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;<a href="Message.html">Message</a>>}</span></h4>

<div class="description"> <p>Reads an (optionally armored) OpenPGP message and returns a Message object</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>armoredMessage</code></td> <td class="type"> <span class="param-type">String</span>|
<span class="param-type">ReadableStream.&lt;String></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Armored message to be parsed</p></td> </tr> <tr> <td class="name"><code>binaryMessage</code></td> <td class="type"> <span class="param-type">Uint8Array</span>|
<span class="param-type">ReadableStream.&lt;Uint8Array></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Binary to be parsed</p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/message.js">message.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/message.js#L852">line 852</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>New message object.</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;<a href="Message.html">Message</a>></span>
</dd></dl>



<h4 class="name" id="readPrivateKey"><span class="type-signature">(async) </span>readPrivateKey<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;<a href="PrivateKey.html">PrivateKey</a>>}</span></h4>

<div class="description"> <p>Reads an (optionally armored) OpenPGP private key and returns a PrivateKey object</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>armoredKey</code></td> <td class="type"> <span class="param-type">String</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Armored key to be parsed</p></td> </tr> <tr> <td class="name"><code>binaryKey</code></td> <td class="type"> <span class="param-type">Uint8Array</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Binary key to be parsed</p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/key/factory.js">key/factory.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/key/factory.js#L361">line 361</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>Key object.</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;<a href="PrivateKey.html">PrivateKey</a>></span>
</dd></dl>



<h4 class="name" id="readPrivateKeys"><span class="type-signature">(async) </span>readPrivateKeys<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;Array.&lt;<a href="PrivateKey.html">PrivateKey</a>>>}</span></h4>

<div class="description"> <p>Reads an (optionally armored) OpenPGP private key block and returns a list of PrivateKey objects</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>armoredKeys</code></td> <td class="type"> <span class="param-type">String</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Armored keys to be parsed</p></td> </tr> <tr> <td class="name"><code>binaryKeys</code></td> <td class="type"> <span class="param-type">Uint8Array</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Binary keys to be parsed</p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/key/factory.js">key/factory.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/key/factory.js#L451">line 451</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>Key objects.</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;Array.&lt;<a href="PrivateKey.html">PrivateKey</a>>></span>
</dd></dl>



<h4 class="name" id="readSignature"><span class="type-signature">(async) </span>readSignature<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;<a href="Signature.html">Signature</a>>}</span></h4>

<div class="description"> <p>reads an (optionally armored) OpenPGP signature and returns a signature object</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>armoredSignature</code></td> <td class="type"> <span class="param-type">String</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Armored signature to be parsed</p></td> </tr> <tr> <td class="name"><code>binarySignature</code></td> <td class="type"> <span class="param-type">Uint8Array</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Binary signature to be parsed</p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/signature.js">signature.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/signature.js#L76">line 76</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>New signature object.</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;<a href="Signature.html">Signature</a>></span>
</dd></dl>



<h4 class="name" id="reformatKey"><span class="type-signature">(async) </span>reformatKey<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;Object>}</span></h4>

<div class="description"> <p>Reformats signature packets for a key and rewraps key object.</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th>Default</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>privateKey</code></td> <td class="type"> <span class="param-type"><a href="PrivateKey.html">PrivateKey</a></span>
</td> <td class="attributes"> </td> <td class="default"> </td> <td class="description last"><p>Private key to reformat</p></td> </tr> <tr> <td class="name"><code>userIDs</code></td> <td class="type"> <span class="param-type">Object</span>|
<span class="param-type">Array.&lt;Object></span>
</td> <td class="attributes"> </td> <td class="default"> </td> <td class="description last"><p>User IDs as objects: <code>{ name: 'Jo Doe', email: 'info@jo.com' }</code></p></td> </tr> <tr> <td class="name"><code>passphrase</code></td> <td class="type"> <span class="param-type">String</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> (not protected) </td> <td class="description last"><p>The passphrase used to encrypt the reformatted private key. If omitted or empty, the key won't be encrypted.</p></td> </tr> <tr> <td class="name"><code>keyExpirationTime</code></td> <td class="type"> <span class="param-type">Number</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> 0 (never expires) </td> <td class="description last"><p>Number of seconds from the key creation time after which the key expires</p></td> </tr> <tr> <td class="name"><code>date</code></td> <td class="type"> <span class="param-type">Date</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Override the creation date of the key signatures. If the key was previously used to sign messages, it is recommendedto set the same date as the key creation time to ensure that old message signatures will still be verifiable using the reformatted key.</p></td> </tr> <tr> <td class="name"><code>format</code></td> <td class="type"> <span class="param-type">'armored'</span>|
<span class="param-type">'binary'</span>|
<span class="param-type">'object'</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> 'armored' </td> <td class="description last"><p>format of the output keys</p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js">openpgp.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js#L109">line 109</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>The generated key object in the form:{ privateKey:PrivateKey|Uint8Array|String, publicKey:PublicKey|Uint8Array|String, revocationCertificate:String }</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;Object></span>
</dd></dl>



<h4 class="name" id="revokeKey"><span class="type-signature">(async) </span>revokeKey<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;Object>}</span></h4>

<div class="description"> <p>Revokes a key. Requires either a private key or a revocation certificate.If a revocation certificate is passed, the reasonForRevocation parameter will be ignored.</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th>Default</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>key</code></td> <td class="type"> <span class="param-type"><a href="Key.html">Key</a></span>
</td> <td class="attributes"> </td> <td class="default"> </td> <td class="description last"><p>Public or private key to revoke</p></td> </tr> <tr> <td class="name"><code>revocationCertificate</code></td> <td class="type"> <span class="param-type">String</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Revocation certificate to revoke the key with</p></td> </tr> <tr> <td class="name"><code>reasonForRevocation</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Object indicating the reason for revocation</p> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th>Default</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>flag</code></td> <td class="type"> <span class="param-type"><a href="module-enums.html#.reasonForRevocation">module:enums.reasonForRevocation</a></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> <a href="module-enums.html#.reasonForRevocation">noReason</a> </td> <td class="description last"><p>Flag indicating the reason for revocation</p></td> </tr> <tr> <td class="name"><code>string</code></td> <td class="type"> <span class="param-type">String</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> "" </td> <td class="description last"><p>String explaining the reason for revocation</p></td> </tr> </tbody></table> </td> </tr> <tr> <td class="name"><code>date</code></td> <td class="type"> <span class="param-type">Date</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Use the given date instead of the current time to verify validity of revocation certificate (if provided), or as creation time of the revocation signature</p></td> </tr> <tr> <td class="name"><code>format</code></td> <td class="type"> <span class="param-type">'armored'</span>|
<span class="param-type">'binary'</span>|
<span class="param-type">'object'</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> 'armored' </td> <td class="description last"><p>format of the output key(s)</p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js">openpgp.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js#L150">line 150</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>The revoked key in the form:{ privateKey:PrivateKey|Uint8Array|String, publicKey:PublicKey|Uint8Array|String } if private key is passed, or{ privateKey: null, publicKey:PublicKey|Uint8Array|String } otherwise</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;Object></span>
</dd></dl>



<h4 class="name" id="runAEAD"><span class="type-signature">(async) </span>runAEAD<span class="signature">(fn, key, data)</span><span class="type-signature"> &rarr; {Promise.&lt;(Uint8Array|ReadableStream.&lt;Uint8Array>)>}</span></h4>

<div class="description"> <p>En/decrypt the payload.</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>fn</code></td> <td class="type"> <span class="param-type"><a href="global.html#encrypt">encrypt</a></span>|
<span class="param-type"><a href="global.html#decrypt">decrypt</a></span>
</td> <td class="description last"><p>Whether to encrypt or decrypt</p></td> </tr> <tr> <td class="name"><code>key</code></td> <td class="type"> <span class="param-type">Uint8Array</span>
</td> <td class="description last"><p>The session key used to en/decrypt the payload</p></td> </tr> <tr> <td class="name"><code>data</code></td> <td class="type"> <span class="param-type">Uint8Array</span>|
<span class="param-type">ReadableStream.&lt;Uint8Array></span>
</td> <td class="description last"><p>The data to en/decrypt</p></td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/packet/sym_encrypted_integrity_protected_data.js">packet/sym_encrypted_integrity_protected_data.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/packet/sym_encrypted_integrity_protected_data.js#L211">line 211</a> </li></ul></dd> </dl>













<h5>Returns:</h5>
<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;(Uint8Array|ReadableStream.&lt;Uint8Array>)></span>
</dd></dl>



<h4 class="name" id="sign"><span class="type-signature">(async) </span>sign<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;MaybeStream.&lt;(String|Uint8Array)>>}</span></h4>

<div class="description"> <p>Signs a message.</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th>Default</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>message</code></td> <td class="type"> <span class="param-type"><a href="CleartextMessage.html">CleartextMessage</a></span>|
<span class="param-type"><a href="Message.html">Message</a></span>
</td> <td class="attributes"> </td> <td class="default"> </td> <td class="description last"><p>(cleartext) message to be signed</p></td> </tr> <tr> <td class="name"><code>signingKeys</code></td> <td class="type"> <span class="param-type"><a href="PrivateKey.html">PrivateKey</a></span>|
<span class="param-type">Array.&lt;<a href="PrivateKey.html">PrivateKey</a>></span>
</td> <td class="attributes"> </td> <td class="default"> </td> <td class="description last"><p>Array of keys or single key with decrypted secret key data to sign cleartext</p></td> </tr> <tr> <td class="name"><code>format</code></td> <td class="type"> <span class="param-type">'armored'</span>|
<span class="param-type">'binary'</span>|
<span class="param-type">'object'</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> 'armored' </td> <td class="description last"><p>Format of the returned message</p></td> </tr> <tr> <td class="name"><code>detached</code></td> <td class="type"> <span class="param-type">Boolean</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> false </td> <td class="description last"><p>If the return value should contain a detached signature</p></td> </tr> <tr> <td class="name"><code>signingKeyIDs</code></td> <td class="type"> <span class="param-type">KeyID</span>|
<span class="param-type">Array.&lt;KeyID></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> latest-created valid signing (sub)keys </td> <td class="description last"><p>Array of key IDs to use for signing. Each signingKeyIDs[i] corresponds to signingKeys[i]</p></td> </tr> <tr> <td class="name"><code>date</code></td> <td class="type"> <span class="param-type">Date</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> current date </td> <td class="description last"><p>Override the creation date of the signature</p></td> </tr> <tr> <td class="name"><code>signingUserIDs</code></td> <td class="type"> <span class="param-type">Object</span>|
<span class="param-type">Array.&lt;Object></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> primary user IDs </td> <td class="description last"><p>Array of user IDs to sign with, one per key in <code>signingKeys</code>, e.g. <code>[{ name: 'Steve Sender', email: 'steve@openpgp.org' }]</code></p></td> </tr> <tr> <td class="name"><code>signatureNotations</code></td> <td class="type"> <span class="param-type">Object</span>|
<span class="param-type">Array.&lt;Object></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> [] </td> <td class="description last"><p>Array of notations to add to the signatures, e.g. <code>[{ name: 'test@example.org', value: new TextEncoder().encode('test'), humanReadable: true, critical: false }]</code></p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js">openpgp.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js#L406">line 406</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>Signed message (string if <code>armor</code> was true, the default; Uint8Array if <code>armor</code> was false).</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;MaybeStream.&lt;(String|Uint8Array)>></span>
</dd></dl>



<h4 class="name" id="unarmor"><span class="type-signature">(async) </span>unarmor<span class="signature">(input)</span><span class="type-signature"> &rarr; {Promise.&lt;Object>}</span></h4>

<div class="description"> <p>Dearmor an OpenPGP armored message; verify the checksum and returnthe encoded bytes</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>input</code></td> <td class="type"> <span class="param-type">String</span>
</td> <td class="description last"><p>OpenPGP armored message</p></td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/encoding/armor.js">encoding/armor.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/encoding/armor.js#L229">line 229</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>An object with attribute &quot;text&quot; containing the message text,an attribute &quot;data&quot; containing a stream of bytes and &quot;type&quot; for the ASCII armor type</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;Object></span>
</dd></dl>



<h4 class="name" id="verify"><span class="type-signature">(async) </span>verify<span class="signature">(options)</span><span class="type-signature"> &rarr; {Promise.&lt;Object>}</span></h4>

<div class="description"> <p>Verifies signatures of cleartext signed message</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"> <h6>Properties</h6> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th>Default</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>message</code></td> <td class="type"> <span class="param-type"><a href="CleartextMessage.html">CleartextMessage</a></span>|
<span class="param-type"><a href="Message.html">Message</a></span>
</td> <td class="attributes"> </td> <td class="default"> </td> <td class="description last"><p>(cleartext) message object with signatures</p></td> </tr> <tr> <td class="name"><code>verificationKeys</code></td> <td class="type"> <span class="param-type"><a href="PublicKey.html">PublicKey</a></span>|
<span class="param-type">Array.&lt;<a href="PublicKey.html">PublicKey</a>></span>
</td> <td class="attributes"> </td> <td class="default"> </td> <td class="description last"><p>Array of publicKeys or single key, to verify signatures</p></td> </tr> <tr> <td class="name"><code>expectSigned</code></td> <td class="type"> <span class="param-type">Boolean</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> false </td> <td class="description last"><p>If true, verification throws if the message is not signed with the provided publicKeys</p></td> </tr> <tr> <td class="name"><code>format</code></td> <td class="type"> <span class="param-type">'utf8'</span>|
<span class="param-type">'binary'</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> 'utf8' </td> <td class="description last"><p>Whether to return data as a string(Stream) or Uint8Array(Stream). If 'utf8' (the default), also normalize newlines.</p></td> </tr> <tr> <td class="name"><code>signature</code></td> <td class="type"> <span class="param-type"><a href="Signature.html">Signature</a></span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Detached signature for verification</p></td> </tr> <tr> <td class="name"><code>date</code></td> <td class="type"> <span class="param-type">Date</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> current date </td> <td class="description last"><p>Use the given date for verification instead of the current time</p></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="attributes"> &lt;optional><br> </td> <td class="default"> </td> <td class="description last"><p>Custom configuration settings to overwrite those in <a href="module-config.html">config</a></p></td> </tr> </tbody></table> </td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js">openpgp.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/openpgp.js#L475">line 475</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>Object containing verified message in the form:</p><pre><code>{ data: MaybeStream&lt;String&gt;, (if `message` was a CleartextMessage) data: MaybeStream&lt;Uint8Array&gt;, (if `message` was a Message) signatures: [ { keyID: module:type/keyid~KeyID, verified: Promise&lt;true&gt;, signature: Promise&lt;Signature&gt; }, ... ]}
where `signatures` contains a separate entry for each signature packet found in the input message.</code></pre></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">Promise.&lt;Object></span>
</dd></dl>



<h4 class="name" id="wrapKeyObject"><span class="type-signature">(async) </span>wrapKeyObject<span class="signature">(secretKeyPacket, secretSubkeyPackets, options, config)</span><span class="type-signature"> &rarr; {<a href="PrivateKey.html">PrivateKey</a>}</span></h4>

<div class="description"> <p>Construct PrivateKey object from the given key packets, add certification signatures and set passphrase protectionThe new key includes a revocation certificate that must be removed before returning the key, otherwise the key is considered revoked.</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>secretKeyPacket</code></td> <td class="type"> <span class="param-type"><a href="SecretKeyPacket.html">SecretKeyPacket</a></span>
</td> <td class="description last"></td> </tr> <tr> <td class="name"><code>secretSubkeyPackets</code></td> <td class="type"> <span class="param-type"><a href="SecretSubkeyPacket.html">SecretSubkeyPacket</a></span>
</td> <td class="description last"></td> </tr> <tr> <td class="name"><code>options</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"></td> </tr> <tr> <td class="name"><code>config</code></td> <td class="type"> <span class="param-type">Object</span>
</td> <td class="description last"><p>Full configuration</p></td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/key/factory.js">key/factory.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/key/factory.js#L175">line 175</a> </li></ul></dd> </dl>













<h5>Returns:</h5>
<dl> <dt> Type </dt> <dd> <span class="param-type"><a href="PrivateKey.html">PrivateKey</a></span>
</dd></dl>



<h4 class="name" id="zlib"><span class="type-signature"></span>zlib<span class="signature">(compressionStreamInstantiator, ZlibStreamedConstructor)</span><span class="type-signature"> &rarr; {ReadableStream.&lt;Uint8Array>}</span></h4>

<div class="description"> <p>Zlib processor relying on Compression Stream API if available, or falling back to fflate otherwise.</p></div>







<h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>compressionStreamInstantiator</code></td> <td class="type"> <span class="param-type">function</span>
</td> <td class="description last"></td> </tr> <tr> <td class="name"><code>ZlibStreamedConstructor</code></td> <td class="type"> <span class="param-type">FunctionConstructor</span>
</td> <td class="description last"><p>fflate constructor</p></td> </tr> </tbody></table>




<dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/packet/compressed_data.js">packet/compressed_data.js</a>, <a href="https://github.com/openpgpjs/openpgpjs/blob/v6.0.0-beta.3.patch.1/src/packet/compressed_data.js#L147">line 147</a> </li></ul></dd> </dl>













<h5>Returns:</h5> <div class="param-desc"> <p>compressed or decompressed data</p></div>

<dl> <dt> Type </dt> <dd> <span class="param-type">ReadableStream.&lt;Uint8Array></span>
</dd></dl>



</article></section>


</div><nav> <h2><a href="index.html">Home</a></h2><h3>Functions</h3><ul><li><a href="global.html#armor">armor</a></li><li><a href="global.html#createCleartextMessage">createCleartextMessage</a></li><li><a href="global.html#createKey">createKey</a></li><li><a href="global.html#createMessage">createMessage</a></li><li><a href="global.html#decrypt">decrypt</a></li><li><a href="global.html#decryptKey">decryptKey</a></li><li><a href="global.html#decryptSessionKeys">decryptSessionKeys</a></li><li><a href="global.html#encrypt">encrypt</a></li><li><a href="global.html#encryptKey">encryptKey</a></li><li><a href="global.html#encryptSessionKey">encryptSessionKey</a></li><li><a href="global.html#formatObject">formatObject</a></li><li><a href="global.html#generateKey">generateKey</a></li><li><a href="global.html#generateSessionKey">generateSessionKey</a></li><li><a href="global.html#getCipherBlockSize">getCipherBlockSize</a></li><li><a href="global.html#getCipherKeySize">getCipherKeySize</a></li><li><a href="global.html#getCipherParams">getCipherParams</a></li><li><a href="global.html#getCompressionStreamInstantiators">getCompressionStreamInstantiators</a></li><li><a href="global.html#newPacketFromTag">newPacketFromTag</a></li><li><a href="global.html#newS2KFromConfig">newS2KFromConfig</a></li><li><a href="global.html#newS2KFromType">newS2KFromType</a></li><li><a href="global.html#produceEncryptionKey">produceEncryptionKey</a></li><li><a href="global.html#readCleartextMessage">readCleartextMessage</a></li><li><a href="global.html#readKey">readKey</a></li><li><a href="global.html#readKeys">readKeys</a></li><li><a href="global.html#readMessage">readMessage</a></li><li><a href="global.html#readPrivateKey">readPrivateKey</a></li><li><a href="global.html#readPrivateKeys">readPrivateKeys</a></li><li><a href="global.html#readSignature">readSignature</a></li><li><a href="global.html#reformatKey">reformatKey</a></li><li><a href="global.html#revokeKey">revokeKey</a></li><li><a href="global.html#runAEAD">runAEAD</a></li><li><a href="global.html#sign">sign</a></li><li><a href="global.html#unarmor">unarmor</a></li><li><a href="global.html#verify">verify</a></li><li><a href="global.html#wrapKeyObject">wrapKeyObject</a></li><li><a href="global.html#zlib">zlib</a></li></ul><h3>Modules</h3><ul><li><a href="module-config.html">config</a></li><li><a href="module-crypto.html">crypto</a></li><li><a href="module-crypto_aes_kw.html">crypto/aes_kw</a></li><li><a href="module-crypto_cmac.html">crypto/cmac</a></li><li><a href="module-crypto_crypto.html">crypto/crypto</a></li><li><a href="module-crypto_hash.html">crypto/hash</a></li><li><a href="module-crypto_hkdf.html">crypto/hkdf</a></li><li><a href="module-crypto_mode.html">crypto/mode</a></li><li><a href="module-crypto_mode_cfb.html">crypto/mode/cfb</a></li><li><a href="module-crypto_mode_eax.html">crypto/mode/eax</a></li><li><a href="module-crypto_mode_gcm.html">crypto/mode/gcm</a></li><li><a href="module-crypto_mode_ocb.html">crypto/mode/ocb</a></li><li><a href="module-crypto_pkcs1.html">crypto/pkcs1</a></li><li><a href="module-crypto_public_key.html">crypto/public_key</a></li><li><a href="module-crypto_public_key_dsa.html">crypto/public_key/dsa</a></li><li><a href="module-crypto_public_key_elgamal.html">crypto/public_key/elgamal</a></li><li><a href="module-crypto_public_key_elliptic.html">crypto/public_key/elliptic</a></li><li><a href="module-crypto_public_key_elliptic_curve.html">crypto/public_key/elliptic/curve</a></li><li><a href="module-crypto_public_key_elliptic_ecdh.html">crypto/public_key/elliptic/ecdh</a></li><li><a href="module-crypto_public_key_elliptic_ecdsa.html">crypto/public_key/elliptic/ecdsa</a></li><li><a href="module-crypto_public_key_elliptic_eddsa.html">crypto/public_key/elliptic/eddsa</a></li><li><a href="module-crypto_public_key_elliptic_eddsa_legacy.html">crypto/public_key/elliptic/eddsa_legacy</a></li><li><a href="module-crypto_public_key_rsa.html">crypto/public_key/rsa</a></li><li><a href="module-crypto_random.html">crypto/random</a></li><li><a href="module-crypto_signature.html">crypto/signature</a></li><li><a href="module-encoding_base64.html">encoding/base64</a></li><li><a href="module-enums.html">enums</a></li><li><a href="module-key_helper.html">key/helper</a></li><li><a href="module-key_Subkey.html">key/Subkey</a></li><li><a href="module-key_User.html">key/User</a></li><li><a href="module-packet_packet.html">packet/packet</a></li><li><a href="module-type_ecdh_symkey.html">type/ecdh_symkey</a></li><li><a href="module-type_keyid.html">type/keyid</a></li><li><a href="module-type_oid.html">type/oid</a></li><li><a href="module-type_s2k.html">type/s2k</a></li><li><a href="module-type_x25519x448_symkey.html">type/x25519x448_symkey</a></li><li><a href="module-util.html">util</a></li></ul><h3>Classes</h3><ul><li><a href="AEADEncryptedDataPacket.html">AEADEncryptedDataPacket</a></li><li><a href="Argon2S2K.html">Argon2S2K</a></li><li><a href="CleartextMessage.html">CleartextMessage</a></li><li><a href="CompressedDataPacket.html">CompressedDataPacket</a></li><li><a href="Key.html">Key</a></li><li><a href="LiteralDataPacket.html">LiteralDataPacket</a></li><li><a href="MarkerPacket.html">MarkerPacket</a></li><li><a href="Message.html">Message</a></li><li><a href="module-key_Subkey-Subkey.html">Subkey</a></li><li><a href="module-key_User-User.html">User</a></li><li><a href="module-type_kdf_params-KDFParams.html">KDFParams</a></li><li><a href="module-type_keyid-KeyID.html">KeyID</a></li><li><a href="module-type_s2k-GenericS2K.html">GenericS2K</a></li><li><a href="OnePassSignaturePacket.html">OnePassSignaturePacket</a></li><li><a href="PacketList.html">PacketList</a></li><li><a href="PaddingPacket.html">PaddingPacket</a></li><li><a href="PrivateKey.html">PrivateKey</a></li><li><a href="PublicKey.html">PublicKey</a></li><li><a href="PublicKeyEncryptedSessionKeyPacket.html">PublicKeyEncryptedSessionKeyPacket</a></li><li><a href="PublicKeyPacket.html">PublicKeyPacket</a></li><li><a href="PublicSubkeyPacket.html">PublicSubkeyPacket</a></li><li><a href="SecretKeyPacket.html">SecretKeyPacket</a></li><li><a href="SecretSubkeyPacket.html">SecretSubkeyPacket</a></li><li><a href="Signature.html">Signature</a></li><li><a href="SignaturePacket.html">SignaturePacket</a></li><li><a href="SymEncryptedIntegrityProtectedDataPacket.html">SymEncryptedIntegrityProtectedDataPacket</a></li><li><a href="SymEncryptedSessionKeyPacket.html">SymEncryptedSessionKeyPacket</a></li><li><a href="SymmetricallyEncryptedDataPacket.html">SymmetricallyEncryptedDataPacket</a></li><li><a href="TrustPacket.html">TrustPacket</a></li><li><a href="UserAttributePacket.html">UserAttributePacket</a></li><li><a href="UserIDPacket.html">UserIDPacket</a></li></ul></nav><br class="clear"><footer> Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.11</a></footer><script> prettyPrint(); </script><script src="scripts/linenumber.js"> </script></body></html>