Baseline Widely available *
å®å ¨ãªã³ã³ããã¹ãç¨: ãã®æ©è½ã¯ä¸é¨ã¾ãã¯ãã¹ã¦ã®å¯¾å¿ãã¦ãããã©ã¦ã¶ã¼ã«ããã¦ãå®å ¨ãªã³ã³ããã¹ã (HTTPS) ã§ã®ã¿å©ç¨ã§ãã¾ãã
ã¦ã§ãèªè¨¼ API ã¯ãå ¬é鵿å·ãç¨ãã¦å¼·åãªèªè¨¼ãå¯è½ã«ããè³æ ¼æ å ±ç®¡ç API ã®æ¡å¼µæ©è½ã§ããã¹ã¯ã¼ãã¬ã¹èªè¨¼ãã SMS ããã¹ããç¨ããªãå®å ¨ãªäºè¦ç´ èªè¨¼ãå®ç¾ãã¾ãã
ã¦ã§ãèªè¨¼ã®æ¦å¿µã¨ä½¿ãæ¹ã¦ã§ãèªè¨¼ API (å¥å WebAuthn) ã¯ãã¦ã§ããµã¤ãã§ç»é²ãèªè¨¼ãäºè¦ç´ èªè¨¼ãè¡ãããã«ãã¹ã¯ã¼ãã SMS ã®ããã¹ãã使ç¨ããã®ã§ã¯ãªããå ¬é鵿å·ã使ç¨ãã¾ããããã«ã¯ããã¤ãã®å©ç¹ãããã¾ãã
å¤ãã®ã¦ã§ããµã¤ããæ¢ã«ã¢ã«ã¦ã³ãã®ç»é²ã使ããã¢ã«ã¦ã³ãã«ãã°ã¤ã³ããã¦ã§ããã¼ã¸ãæä¾ãã¦ãã¾ããã¦ã§ãèªè¨¼ API ã¯ãããã®æ¢åã®ã¦ã§ããã¼ã¸ã®ä»£æ¿ã¾ãã¯è£è¶³ã¨ãã¦æ©è½ãã¾ãã è³æ ¼æ å ±ç®¡ç API ã®ä»ã®å½¢å¼ã¨åæ§ã«ã ã¦ã§ãèªè¨¼ API ã¯ç»é²ã¨ãã°ã¤ã³ã® 2 ã¤ã®åºæ¬çãªæ©è½ãæã£ã¦ãã¾ãã
navigator.credentials.create()
- publicKey ãªãã·ã§ã³ã¨ä½µç¨ããã¨ãæ°ããã¢ã«ã¦ã³ãã®ç»é²ã¾ãã¯æ¢åã®ã¢ã«ã¦ã³ãã¸ã®æ°ããé対称éµãã¢ã®é¢é£ä»ããè¡ãããã«æ°ããèªè¨¼æ
å ±ã使ãã¾ããnavigator.credentials.get()
- publicKey ãªãã·ã§ã³ã¨ä½µç¨ããã¨ããµã¼ãã¹ã«å¯¾ããèªè¨¼ã®ããã«ããã°ã¤ã³ã¾ãã¯äºè¦ç´ èªè¨¼ã¨ãã¦æ¢åã®èªè¨¼æ
å ±ã»ããã使ç¨ãã¾ããã¡ã¢: create()
㨠get()
ã¯ä¸¡æ¹ã¨ãä¿è·ãããã³ã³ããã¹ã ï¼ããªãã¡ããµã¼ãã¼ã« https ã§æ¥ç¶ãã¦ããããµã¼ãã¼ããã¼ã«ã«ãã¹ãã®å ´åï¼ã§ãããã¨ãå¿
è¦ã¨ãããã©ã¦ã¶ã¼ãä¿è·ãããã³ã³ããã¹ãã§åä½ãã¦ããªãå ´åã¯å©ç¨ã§ãã¾ããã
æãåºæ¬çãªå½¢å¼ã¨ãã¦ã¯ãcreate()
㨠get()
ã®ä¸¡æ¹ãããã£ã¬ã³ã¸ãã¨å¼ã°ããé常ã«å¤§ããªä¹±æ°ããµã¼ãã¼ããåãåããç§å¯éµã«ãã£ã¦ç½²åããããã£ã¬ã³ã¸ããµã¼ãã¼ã«è¿ãã¾ããããã«ããããããã¯ã¼ã¯ä¸ã§ç§å¯ãæãããã¨ãªããã¦ã¼ã¶ã¼ãèªè¨¼ã«å¿
è¦ãªç§å¯éµãæã£ã¦ãããã¨ããµã¼ãã¼ï¼ã«è¨¼æãããã¨ãã§ãã¾ãã
create() 㨠get() ã¡ã½ãããå ¨ä½åã®ä¸ã§ã©ã®ããã«ä½ç½®ã¥ããããããçè§£ããããã«ã¯ããã©ã¦ã¶ã¼ã®å¤å´ã«ãã 2 ã¤ã®ã³ã³ãã¼ãã³ãã®éã«ä½ç½®ã¥ãããããã¨ãçè§£ãããã¨ãéè¦ã§ãã
é常ã®ç»é²éç¨ã¯ãå³ 1 ã«ç¤ºã 6 ã¤ã®æé ãè¸ã¿ã¾ãããã®å³ã¯ãæ¦è¦ã説æããããã«ç»é²ããã»ã¹ã«å¿
è¦ãªãã¼ã¿ãç°¡ç¥åãã¦ãã¾ããç»é²ãªã¯ã¨ã¹ãã使ããããã®å¿
é ãã£ã¼ã«ãããªãã·ã§ã³ãã£ã¼ã«ããããã³ãããã®æå³ã¯ãã¹ã¦ PublicKeyCredentialCreationOptions
è¾æ¸ã«è¨è¼ããã¾ããåæ§ã«ãã¬ã¹ãã³ã¹ãã£ã¼ã«ãã¯ãã¹ã¦ PublicKeyCredential
ã¤ã³ã¿ã¼ãã§ã¤ã¹ã«è¨è¼ããã¾ãï¼ãã ã PublicKeyCredential.response
㯠AuthenticatorAttestationResponse
ã¤ã³ã¿ã¼ãã§ã¤ã¹ã«è¨è¼ããã¾ãï¼ããªããã¢ããªã±ã¼ã·ã§ã³ãä½ã£ã¦ããã»ã¨ãã©ã® JavaScript ããã°ã©ãã¼ãæ¬å½ã«æ°ãã¤ããªããã°ãªããªãã®ã¯ã create() ãå¼ã³åºãããè¿å¤ãæã«å
¥ãæé 1 㨠5 ã®ã¿ã§ããããããªããããã©ã¦ã¶ã¼ã¨èªè¨¼å¨ã®ä¸ã§è¡ãããå¦çããã®çµæã®ãã¼ã¿ã®æå³ãçè§£ããããã«ã¯æé 2ã3ã4 ãçè§£ãããã¨ãä¸å¯æ¬ ã§ãã
å³ 1 - ã¦ã§ãèªè¨¼ã«ããç»é²æé ã¨åã¢ã¯ã·ã§ã³ã«é¢é£ããéè¦ãªãã¼ã¿ã®æµãã示ãå³
ã¾ãï¼å³ä¸ã®ã¹ããã 0ï¼ãã¢ããªã±ã¼ã·ã§ã³ã¯æåã®ç»é²è¦æ±ãè¡ãã¾ãããã®ãªã¯ã¨ã¹ãã®ãããã³ã«ã¨ãã©ã¼ãããã¯ãã¦ã§ãèªè¨¼ API ã®ç¯å²å¤ã§ãã
ãã®å¾ã§ã®ç»é²æé ã¯æ¬¡ã®éãã§ãã
ãµã¼ãã¼ããã£ã¬ã³ã¸ã»ã¦ã¼ã¶ã¼æ
å ±ã»ç½²åæ¤è¨¼è
æ
å ±ãéä¿¡ - ãµã¼ãã¼ã¯ãã£ã¬ã³ã¸ã»ã¦ã¼ã¶ã¼æ
å ±ã»ç½²åæ¤è¨¼è
æ
å ±ã JavaScript ããã°ã©ã ã«éä¿¡ãã¾ãããã®ã¨ãã®ãããã³ã«ãç¹ã«æå®ã¯ãªããã¦ã§ãæ¤è¨¼ API ã®ç¯å²å¤ã§ããé常ããµã¼ãã¼ã¯ HTTPS éä¿¡ã使ã£ã¦ REST ã§æ¥ç¶ãã¾ãï¼æãã XMLHttpRequest ã Fetch ãç¨ããã§ãããï¼ããå®å
¨ãªãããã³ã«ã§ããããããã° SOAP ã RFC 2549 ããã®ä»ã»ã¼ã©ã®ãããªãããã³ã«ã使ç¨ãã¦ãæ§ãã¾ããããµã¼ãã¼ããåãåã£ã弿°ã¯ create() ã®å¼ã³åºãã«æ¸¡ãããé常ã»ã¨ãã©ãããã¯å
¨ãæ¹å¤ããã« Promise ãè¿ãã¾ããããã¯ã AuthenticatorAttestationResponse
ãå«ãã PublicKeyCredential
ã解決ããããã®ãã®ã§ãã ãªãããã£ã¬ã³ã¸ã¯ï¼16 ãã¤ã以ä¸ã®ï¼ã©ã³ãã ãªæ
å ±ã®ãããã¡ã¼ã§ãããã¨ã¨ãç»é²éç¨ã®ã»ãã¥ãªãã£ã確ä¿ããããã«å¿
ããµã¼ãã¼ä¸ã§çæãããã¨ã極ãã¦éè¦ã§ãã
ãã©ã¦ã¶ã¼ãèªè¨¼å¨ã«å¯¾ã㦠authenticatorMakeCredential() ãå¼ã³åºã - å
é¨çã«ããã©ã¦ã¶ã¼ã¯å¼æ°ãæ¤è¨¼ããæ¢å®å¤ãæ´åããããã AuthenticatorResponse.clientDataJSON
ã¨ãã¾ããæãéè¦ãªå¼æ°ã®ä¸ã¤ã¯ origin ã§ãããããã clientData ã«ä¿åããããããå¾ã§ãµã¼ãã¼ãæ¤è¨¼ãããã¨ãã§ãã¾ãã create() ã®å¼ã³åºãã®å¼æ°ã¯ clientDataJSON ã® SHA-256 ããã·ã¥å¤ã¨å
±ã«èªè¨¼å¨ã«æ¸¡ããã¾ãï¼èªè¨¼å¨ã¸ã®æ¥ç¶ãä½å¸¯åå¹
ã® NFC ã¾ã㯠Bluetooth ã§ããå¯è½æ§ããããèªè¨¼å¨ã¯åã«ããã·ã¥ã«ç½²åãã¦æ¹ããããã¦ããªããã¨ãä¿è¨¼ãããã¨ãç®çã§ãããããããã·ã¥ã®ã¿ãéä¿¡ãã¾ãï¼ã
èªè¨¼å¨ãæ°ããéµãã¢ã¨ã¢ãµã¼ã·ã§ã³ã使 - ä½ããããåã«ãèªè¨¼å¨ã¯é常ãä½ããã®å½¢ã§ã¦ã¼ã¶ã¼èªè¨¼ãæ±ãã¾ããããã¯ã PIN ã®å ¥åãæç´ã®ä½¿ç¨ãè¹å½©ã¹ãã£ã³ãªã©ã§ãããã¦ã¼ã¶ã¼ãåå¨ããç»é²ã«åæãã¦ãããã¨ã証æãã¾ããã¦ã¼ã¶ã¼èªè¨¼ã®å¾ãèªè¨¼å¨ã¯æ°ããé対称éµãã¢ã使ããå°æ¥ã®åç §ç¨ã«ç§å¯éµãå®å ¨ã«ä¿ç®¡ãã¾ããå ¬ééµã¯ã¢ãµã¼ã·ã§ã³ã®ä¸é¨ã¨ãªããèªè¨¼å¨ã¯è£½é å·¥ç¨ã§çµã¿è¾¼ã¾ããç§å¯éµã§ç½²åããä¿¡é ¼ã®æ ¹æºã¾ã§é¡ã£ã¦æ¤è¨¼ã§ããè¨¼ææ¸ãã§ã¼ã³ãæã£ã¦ãã¾ãã
èªè¨¼å¨ããã©ã¦ã¶ã¼ã«ãã¼ã¿ãè¿ã - æ°ããå ¬ééµãã°ãã¼ãã«ã«ä¸æãªèªè¨¼ IDãããã³ãã®ä»ã®èªè¨¼ãã¼ã¿ããã©ã¦ã¶ã¼ã«è¿ãããããã§ attestationObject ã¨ãªãã¾ãã
ãã©ã¦ã¶ã¼ãæçµçã«éä¿¡ãããã¼ã¿ã使ããã¢ããªã±ã¼ã·ã§ã³ããã®è¿å¤ããµã¼ãã¼ã«éä¿¡ - create() ã®ãããã¹ã PublicKeyCredential
ã«è§£æ±ºãã¾ãã PublicKeyCredential
ã¯ä¸æã®èªè¨¼ ID ã§ãã PublicKeyCredential.rawId
æã£ã¦ããã AuthenticatorResponse.clientDataJSON
ãå«ã AuthenticatorAttestationResponse
ã AuthenticatorAttestationResponse.attestationObject
ã¨ãã£ãã¬ã¹ãã³ã¹ã¨ä¸ç·ã«ããã¾ãããã® PublicKeyCredential
ã¯ãä½ããã®æã¾ãããã©ã¼ãããããããã³ã«ã§ãµã¼ãã¼ã«éä¿¡ããã¾ããï¼æ³¨æã¨ãã¦ã ArrayBuffer ããããã£ã¯ base64 ãä¼¼ããããªãã®ã§ã¨ã³ã³ã¼ãããã¦ããå¿
è¦ãããã¾ããï¼
ãµã¼ãã¼ãç»é²ãæ¤è¨¼ã»å®äºããã - æçµçã«ããµã¼ãã¼ãä¸é£ã®ãã§ãã¯ãè¡ããç»é²ãå®äºãã¦æ¹ããããã¦ããªããã¨ãä¿è¨¼ãããã¨ãè¦æ±ããã¦ãã¾ãããã®ä¿è¨¼ã«ã¯æ¬¡ã®ç¹ãå«ã¿ã¾ãã
æ¤è¨¼ã¹ãããã®å®å ¨ãªä¸è¦§ã¯ ã¦ã§ãèªè¨¼ API 仿§æ¸ã®ä¸ã«ããã¾ãã ãã§ãã¯ã䏿ãããã¨ããµã¼ãã¼ã¯ã¦ã¼ã¶ã¼ã¢ã«ã¦ã³ãã«ç´ã¥ãããã®æ°ããå ¬ééµãä¿åããå°æ¥ã®å©ç¨ã«åãã¾ããã¤ã¾ãã¯ãã¦ã¼ã¶ã¼ãèªè¨¼ã®ããã«ãã®å ¬ééµã使ãããæã¯ä½æã§ã使ããããã«ããã¨ãããã¨ã§ãã
ã¦ã¼ã¶ã¼ã¯ãã¦ã§ãèªè¨¼ã§ç»é²ããå¾ããµã¼ãã¹ã«å¯¾ãã¦èªè¨¼ï¼ãã°ã¤ã³ã¾ãã¯ãµã¤ã³ã¤ã³ï¼ãè¡ããã¨ãã§ãã¾ããèªè¨¼ããã¼ã¯ç»é²ããã¼ã¨ä¼¼ã¦ãããå³ 2 ã®ã¢ã¯ã·ã§ã³ã®å³ã¯ãå³ 1 ã®ç»é²ã¢ã¯ã·ã§ã³ã®å³ã¨ä¼¼ã¦ããã¨æãããããããã¾ãããç»é²ã¨èªè¨¼ã®ä¸»ãªéãã¯ã次ã®éãã§ãã1) èªè¨¼ã¯ãã¦ã¼ã¶ã¼ã¾ãã¯ç½²åæ¤è¨¼è
æ
å ±ãå¿
è¦ã¨ããªãã 2) èªè¨¼ã¯ãè£½é æã«èªè¨¼å¨ã«çµã¿è¾¼ã¾ãããã¼ãã¢ã使ç¨ãã¦èªè¨¼ã使ããã®ã§ã¯ãªãããµã¼ãã¹ç¨ã«äºåã«çæããããã¼ãã¢ã使ç¨ãã¦ã¢ãµã¼ã·ã§ã³ã使ãããç¹°ãè¿ãã¾ããã以ä¸ã®èªè¨¼ã«é¢ãã説æã¯ãã¦ã§ãèªè¨¼ API ã®ãã¹ã¦ã®ãªãã·ã§ã³ãæ©è½ã«è¸ã¿è¾¼ãã®ã§ã¯ãªãã大ã¾ããªæ¦è¦ã説æãããã®ã§ããèªè¨¼ã®ããã®å
·ä½çãªãªãã·ã§ã³ã¯ PublicKeyCredentialRequestOptions
è¾æ¸ã§ãçµæã®ãã¼ã¿ã¯ PublicKeyCredential
ã¤ã³ã¿ã¼ãã§ã¤ã¹ (PublicKeyCredential.response
㯠AuthenticatorAssertionResponse
ã¤ã³ã¿ã¼ãã§ã¤ã¹) ã§è¦ããã¨ãã§ãã¾ãã
å³ 2 - å³ 1 ã¨åæ§ãã¦ã§ãèªè¨¼ã«ããèªè¨¼æé ã¨åã¢ã¯ã·ã§ã³ã«é¢é£ããéè¦ãªãã¼ã¿ã®æµãã示ãã¦ããã
ã¾ãï¼å³ä¸ã®ã¹ããã 0ï¼ãã¢ããªã±ã¼ã·ã§ã³ã¯æåã®ç»é²ãªã¯ã¨ã¹ããè¡ãã¾ãããã®ãªã¯ã¨ã¹ãã®ãããã³ã«ã¨ãã©ã¼ãããã¯ãã¦ã§ãèªè¨¼ API ã®ç¯å²å¤ã§ãã
ãã®å¾ãç»é²ã®ã¹ãããã«ãªãã¾ãã
AuthenticatorResponse.clientDataJSON
ã使ãã¾ããæãéè¦ãªå¼æ°ã®ä¸ã¤ã origin ã§ãããããã¯clientDataã®ä¸é¨ã¨ãã¦è¨é²ãããå¾ã»ã©ãµã¼ãã¼ã«ãã£ã¦æ¤è¨¼ããã¾ãã get() å¼ã³åºãæã®å¼æ°ã¯ã clientDataJSON ã® SHA-256 ããã·ã¥ã¨ä¸ç·ã«èªè¨¼å¨ã«æ¸¡ããã¾ãï¼èªè¨¼å¨ã¸ã®æ¥ç¶ãä½å¸¯åå¹
ã® NFC ã¾ã㯠Bluetooth ã§ããå¯è½æ§ããããèªè¨¼å¨ã¯åã«ããã·ã¥ã«ç½²åãã¦æ¹ããããã¦ããªããã¨ãä¿è¨¼ãããã¨ãç®çã®ãããããã·ã¥ã®ã¿ãéä¿¡ãã¾ãï¼AuthenticatorAssertionResponse
ãå«ã PublicKeyCredential.response
ã¨ä¸ç·ã« Promise ã PublicKeyCredential
ã«è§£æ±ºãããã¨ãã¾ãããµã¼ãã¼ã«å¯¾ãã¦ã©ã®ãããªãããã³ã«ããã©ã¼ãããã§ãã®ãã¼ã¿ãæ»ãã®ãã«ã¤ãã¦ã¯ JavaScript ã¢ããªã±ã¼ã·ã§ã³ã«å§ãããã¦ãã¾ãããããã¯ã¦ã§ãèªè¨¼ API ã®ä»æ§ã§è¦å®ããã¦ããã¢ãµã¼ã·ã§ã³ã®æ¤è¨¼æé ã®ãã¹ã¦ã§ããæ¤è¨¼ãæåããå ´åãã¦ã¼ã¶ã¼ã¯èªè¨¼æ¸ã§ããã¨è¨é²ãã¾ããã¦ã§ãèªè¨¼ã«ããè¦å®ã®å¯¾è±¡ç¯å²å¤ã§ãããã²ã¨ã¤ã®é¸æè¢ã¨ãã¦æ°ãã Cookie ãã¦ã¼ã¶ã¼ã®ã»ãã·ã§ã³ã«å¯¾ãã¦çºè¡ãããã¨ãèãããã¾ãã
ã¤ã³ã¿ã¼ãã§ã¤ã¹Credential
Experimental
ä¿¡é ¼ãæ±ºå®ã¥ããåææ¡ä»¶ã¨ãã¦ã®ã¨ã³ãã£ãã£ã«é¢ããæ å ±ãæä¾ãã¾ãã
CredentialsContainer
ãã°ã¤ã³ã»ãã°ã¢ã¦ããçºçãããããªã¤ãã³ãã®éãè³æ ¼æ
å ±ã®è¦æ±ãã¦ã¼ã¶ã¼ã¨ã¼ã¸ã§ã³ãéç¥ã®ããã®ã¡ã½ãããã¨ã¯ã¹ãã¼ããã¾ãããã®ã¤ã³ã¿ã¼ãã§ã¤ã¹ã¯ Navigator.credentials
ããã¢ã¯ã»ã¹å¯è½ã§ããã¦ã§ãèªè¨¼ã®ä»æ§ã§ã¯ã publicKey
ã¡ã³ãã¼ãcreate()
㨠get()
ã¡ã½ããã«è¿½å ãããããã®ã¡ã½ããã§ã¯ãããããæ°ããªéµãã¢ã®çæãéµãã¢ã«ã¤ãã¦ã®èªè¨¼åå¾ãè¡ãã¾ãã
PublicKeyCredential
å ¬ééµ / ç§å¯éµãã¢ã«ã¤ãã¦ã®æ å ±ãæä¾ããããã¯ãµã¼ãã¹ã¸ã®ãã°ã¤ã³ã®ããã®è³æ ¼æ å ±ã§ããããã¹ã¯ã¼ãã®ä»£ããã«ããã£ãã·ã³ã°èæ§ãã¤ãã¼ã¿æ¼æ´©ä½å¶ã®ããé対称éµãã¢ãç¨ãã¦ãã¾ãã
AuthenticatorResponse
AuthenticatorAttestationResponse
㨠AuthenticatorAssertionResponse
ã«é¢ãããã¼ã¹ã®ã¤ã³ã¿ã¼ãã§ã¤ã¹ã§ãããéµãã¢ã«ã¤ãã¦ã®ä¿¡é ¼ã®æå·çæ ¹å¹¹ãæä¾ãã¾ããCredentialsContainer.create()
㨠CredentialsContainer.get()
ã«ãã£ã¦è¿ãããããããããã®åã¤ã³ã¿ã¼ãã§ã¤ã¹ã¯ãã£ã¬ã³ã¸ããªãªã¸ã³ã®ãããªãã©ã¦ã¶ã¼ããã®æ
å ±ãå«ãã§ãã¾ããPublicKeyCredential.response
ããè¿ãããã§ãããã
AuthenticatorAttestationResponse
PublicKeyCredential
ãæ¸¡ãããæ CredentialsContainer.create()
ã«ãã£ã¦è¿ãããçæãããæ°ããªéµãã¢ã®ä¿¡é ¼ã®æå·çæ ¹å¹¹ãæä¾ãã¾ãã
AuthenticatorAssertionResponse
PublicKeyCredential
ãæ¸¡ãããæ CredentialsContainer.get()
ã«ãã£ã¦è¿ãããéµãã¢ãææãã¦ããèªè¨¼è¦æ±ãæå¹ãã¤æ¿èªæ¸ã¿ã§ããã¨ãã証æ ããµã¼ãã¹ã¸æä¾ãã¾ãã
è¦å: ã»ãã¥ãªãã£ã®è¦³ç¹ãããã¦ã§ãèªè¨¼ã®å¼ã³åºãï¼create()
ã get()
ï¼ãä¿çããã¦ããéã«ãã©ã¦ã¶ã¼ã¦ã£ã³ãã¦ã®ãã©ã¼ã«ã¹ã失ãããã¨ãå¼ã³åºãã¯ãã£ã³ã»ã«ããã¾ãã
// ç»é²ã®ãµã³ãã«å¼æ°
var createCredentialDefaultArgs = {
publicKey: {
// ç½²åæ¤è¨¼è
(a.k.a. - Service):
rp: {
name: "Acme",
},
// User:
user: {
id: new Uint8Array(16),
name: "john.p.smith@example.com",
displayName: "John P. Smith",
},
pubKeyCredParams: [
{
type: "public-key",
alg: -7,
},
],
attestation: "direct",
timeout: 60000,
challenge: new Uint8Array([
// ãµã¼ãã¼ããæå·å¦çã«ã©ã³ãã ãªå¤ãéããã¦ããªããã°ãªããªã
0x8c, 0x0a, 0x26, 0xff, 0x22, 0x91, 0xc1, 0xe9, 0xb9, 0x4e, 0x2e, 0x17,
0x1a, 0x98, 0x6a, 0x73, 0x71, 0x9d, 0x43, 0x48, 0xd5, 0xa7, 0x6a, 0x15,
0x7e, 0x38, 0x94, 0x52, 0x77, 0x97, 0x0f, 0xef,
]).buffer,
},
};
// ãã°ã¤ã³ã®ãµã³ãã«å¼æ°
var getCredentialDefaultArgs = {
publicKey: {
timeout: 60000,
// allowCredentials: [newCredential] // ä¸è¨åç
§
challenge: new Uint8Array([
// ãµã¼ãã¼ããæå·å¦çã«ã©ã³ãã ãªå¤ãéããã¦ããªããã°ãªããªã
0x79, 0x50, 0x68, 0x71, 0xda, 0xee, 0xee, 0xb9, 0x94, 0xc3, 0xc2, 0x15,
0x67, 0x65, 0x26, 0x22, 0xe3, 0xf3, 0xab, 0x3b, 0x78, 0x2e, 0xd5, 0x6f,
0x81, 0x26, 0xe2, 0xa6, 0x01, 0x7d, 0x74, 0x50,
]).buffer,
},
};
// æ°ããèªè¨¼æ
å ±ã®ä½æ/ç»é²
navigator.credentials
.create(createCredentialDefaultArgs)
.then((cred) => {
console.log("NEW CREDENTIAL", cred);
// é常ã¯ãµã¼ãã¼ããå©ç¨å¯è½ãªã¢ã«ã¦ã³ãã®èªè¨¼æ
å ±ãéããã¦ãã¾ãã
// ãã®ä¾ã§ã¯ä¸ããã³ãã¼ããã ãã§ãã
var idList = [
{
id: cred.rawId,
transports: ["usb", "nfc", "ble"],
type: "public-key",
},
];
getCredentialDefaultArgs.publicKey.allowCredentials = idList;
return navigator.credentials.get(getCredentialDefaultArgs);
})
.then((assertion) => {
console.log("ASSERTION", assertion);
})
.catch((err) => {
console.log("ERROR", err);
});
仿§æ¸ ãã©ã¦ã¶ã¼ã®äºææ§ Credential CredentialsContainer PublicKeyCredential AuthenticatorResponse AuthenticatorAttestationResponse AuthenticatorAssertionResponse PublicKeyCredentialCreationOptions PublicKeyCredentialRequestOptions
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4