1Password Security Design
1Password Memberships
  
  
       
         
           
     
           
          
  
          
           
   two-secret key derivation    
           
         
  
         
          
          
     
           
           
         
  
           
           
          
         

  

Principles 7
Account password and Secret Key 10
  
  
  
A modern approach to authentication 14
     
  
    
     
How Vault Items Are Secured 18
   
     
   
How Vaults Are Securely Shared 22
        
How items are shared with anyone 24
 
  
   
   
    
   
    
   
    
  
  
  
 
A deeper look at keys 33
  
  
   
    
   
  
     
    
  
   
   
    
Unlock with a passkey or single sign-on 42
     
     
  
   
     
Revoking Access 49
Access control enforcement 50
   
   
 
  
     
 
  
     
 
    
Restoring a User’s Access to a Vault 54
   
  
  
    
 
  
  
   
   
   
   
  
  
1Password Connect 62
   
  
  
  
   
  
 
  
  
 
 
 
Transport Security 69
   
 
   
  
    
 
Server Infrastructure 72
    
      
Appendices 75
A Beware of the Leopard 76
   
 
    
    
    
   
 
  
    
 
  
    
 
    
   
  
    
     
    
 
    
      
   
    
   
B Secure Remote Password 85
 
 
   
    
  
   
   
C Verifying public keys 90
   
  
  
   
Changelog 105
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
        
        
         
        
       
       
       
       
       
     
   
         
  
  
    
  
  
  
  
   
 
  
  
   
  
  
   
    
   
   
    
 
    
     
  
        
   
    
  
       
     
   
      
     
      
    
    
     
    
    
    
     
    
   
      
    
 encCredentials  
    
    
     
  
   
   
    
   
    

       
         
  
           
          
             
 
Privacy by Design             
         
         
         
        
            
           
          
            
   
      
Trust the Math          
       
         
  
          
              
         
        
        
   
           
          
              
 
  
People are part of the system             
          
    
           
              
           
           
           
  
        
        
           
          
   
         
              
          
           
   
Openness            
       
          
            
         
   
       
     
     
             
     
        
             
           
           
           
             
            
             
              

          
            
  

       
 

              

  
        
             
         
        
             
               
         
            
        
Know your tools          
            
     
         
           
           
          
            
           
          
  

    
           
             
            
         

   
      
     
    
          
           
            
          
            
            
      
     
     
    
 
            
          
           
     
     
     
 
           
           
  

          
           
          
   
          
        
            
          
           
         
Story 1: A (bad) day in the life of your data
        
  
         
         
         
    
         
           
           
          
          
    
         
        
            
         
         
          
        
       
        
         
          
         
        
         
 
         
          
       
       
        
       
          

         
        
         
 
            
            
            
          
       A3-ASWWYB-798JRY-
LJVD4-23DC2-86TVM-H43EB       
          
       
      
       

             
  

         
            
           
            
            

    

  
 
     
      
      
    

   
  
            
              
           
            

 
             
            
            
           
           
              
             
          
           

KEEP SAFE - DON'T THROW AWAY - KEEP SAFE - DON'T THROW AWAY - KEEP SAFE - DON'T THROW AWAY
Emergency Kit
Created for Patty on November 3rd, 2015.
Account Key
A3-8MMQJN-MZ64CY-2SDB4-RPX3T-V52Q3-N2C84
email address [email protected]
sign-in url https://example.1password.com
Master Password
Use this kit to recover access to your 1Password account if you are ever locked out.
https://1password.com
Print out this document.
Fill in your Master Password above.
Store your Emergency Kit somewhere safe, accessible, and offline.
For questions and support, please contact AgileBits: [email protected].
    
Story 2: A day in the life of an Emergency Kit
          
        
        
         
         
       
         
        
         
         
        
        
         
         
         
        
        
        
        
      
          
        
          
        
         
         
          
          

           
  

          
             
          
            
          
 
           
          
           
           
             
          
      
     
       
     
  

    
                 
      
       
     
     
 
             
           
            
         
           
       
              
        
          
 
       
            
 
         
         
        
          
           
 
          
            
           
            
            
          
    
            
       
   
    
       
       
 
            
  

            
             
        
            
  
        
     
      
   
            
      
          
         
           
       
 
         
          
           
             
   
              
           
           
    
       
  
   
       

      
       
    
      
    
     
 
      
  
      
   
    

         
          
     
          
          
      
              
         
           
      
         
          
             
           
            
   
           
              
  

           
             
   
Sign-in system desiderata
           
 
           
 
       
        
        
         
     
         
    
          
    
       
   
     
     
     
  
          
            
          
         
            
           
        
          
              
         
      
    
    
    
        
     
     
    
         
           
           
       
  

    
          
        
          
          
            
          
          
           
            
          
           
             
  
             
        
          
           
           
            
           
         
        
   
   3 33 3 3
   5 5 3 3
  5 5 3 3
  5 3 3
   5 5 3 3
  5 5 3 3
  5 5 5 3
    
      
     
     
   
      
      
      
      
    
         
         
             
          
           
              
         
  

    
         
            
      
            
     
        
        
        
     
           


  
for 


endfor
return
      
 
        
   
         
      
       
      
     
  
           
      
           
          
           
            
      
              
         
            
             
             
          
  
           
           
           
    
  

  
           
             
            
 
        
      
         
       
       
       
   
     
       
    
 
         

         
           
           
           
            
           
          
           
              
          
            
           
           
     
         
              
        
"uuid": string, // Unique ID of this item (hexadecimal)
"encSymmetricKey": JWK, // encrypted key that encrypts private key
"encryptedBy": string, // UUID of key that encrypts encSymmetricKey
"publicKey": JWK, // public part of key pair
"encPrivateKey": JWK, // private part, encrypted
       
      
       
  
            
          
          
           
         
  

       
         
  
Story 3: A day in the life of an item being created
          
         
      
          
        
         
           
         
    
         
          
         
         
    
           
       
           
         
 
         
        
         
          
    
        
         
       
           
       
  
           
             
          
            
           
           

           
  
  

Story 4: Days in the life of an algorithm upgrade
Setting      
         
          
   
           
         

        
        
        
    
        
         
      
       
      
          
  
           
        
         
       

         
      
        
        
       

       
        
 
         
           
            
          
       
  

    
          
           
          
           
         
           
           
             
             
      
Story 5: A day in the life of a shared vault
         
         
          
        
         
         
        
    
          
        
        
         
          
         
          
              
             
  
      
            
            
            
     
           
             
  

             
 
          
             
             
 
  

     
          
           
            
          
          
            
           
           
 
         
            
             
          
            
        

       
        
         
          
          
     
          
    
          
          
       
        
        
  

          
         
        
         
           
        
          
            
Sender
Recipient
1P client
IS client
IS server
1P server
       
      
       
       
      
       
       
   
    
       
       
     
      
     
     
   
      
    
 
            
              
           
      
  
           
  

Share link
https://share.1password.com/s#base64-encoded-secret
       
     
      
      
           
    
              
           
        
 
          
   
          
            
     
        
           
         
          
  
         
           
           
          
           
       
     
  
        
          
           
          
           
            
 
   
            
         
           
  

         
 


     
     
shareitemencryptionkey  









     
shareitemuuid  


    
 
     
shareitemtoken  


    
 
      
     
      
     
            
            
         
           
             
         
 
  
            
           
           
          
          
           
            
            
          
         
           
  
           
          
         
          
          
  

           
          
      https://share.1password.
com/s
          
   
    
   
         
             
            
           
    
           
          
           
              
              

D   
         
         
      
          
         
      
         
      
          
        
          
          
           
         
   
           
             
           
           
           
              
         
          
      
  

  
           
        
       


       share.1password.com

     
   

         1password.
com
           
 .com           
           
           
      
           
          
             
              
   
   
           
            
             
           
          
           
          
          
           
           
          
    
 
           
 https://share.1password.com/s     
          
          
           
              
        
  

             

             
             
    
           
     
           
         
           
             
      OP-Share-Token     
            
  
D        
        
        
         
         
           
        
      

       
        
         
       
        
       
        
       
       
      
       
          
   
       
         
       
        
            
        
         
         
            
        
        
      
     
           
           
            



    
     
  
            
            
              
           
         
  

             
          
            
 
             
              
         
          

      
          
             
           
            
           
           
             

         
             
           
       
 
            
           
            
             
          
   

            
            
          
          
         
           
           
           
  

           
      
          
            
           
            
           
           
             

           
          
           
            
         
            
          
     
           
           
            
          
               
            
           
            
       
          
        
           
           
             
              
           
           
            

  

    
            
             
           
          
     
            
           
             
               
         
 
           
 
 
          
       
          
    
  
 SecRandomCopyBytes()  
 CryptGenRandom()   
 getRandomValues() 
 SecureRandom() 
 crypto/rand    
    
     
      
      
     
  op
        crypto.
generateKey         
       
              
       
  

           
            
  {2-9, A-H, J-N, P-T, V-Z}
           
              
         
 
           
           
           
   
     
         
           
          
            
  
           
              
             
             
           
         
           
           
             
 
           
         
       
   
           
        
      
          
         
  

 
   
         
trim
normalize
HKDFversion
PBKDF2
HKDF
version
JWKify
       
     
    
 
     
  
          
            
      
           
     
          
         
           
 
D   
          
        
       
       
      
  
       
        
          
          
 0x212B  0x00C5  0x0041030A 
         
       
       
        
           
         
      
         
        
         
        
0x0041030A
         
            
             
            
            
    
  

  
          
            
  

       

    
       
  
         
 
 
          
   
          
        
            
              
      
              
              
      

  

    
 
             
       
         



     
      
      
      
       
      
    
     

    

    
     

            


     
    
            
           
             
             
 
{ "alg":"A256GCM",
"ext":false,
"k":"KCVXrFs8oJBheco-JxbHkPL9bxyN5\
WZ68hyfVgrBuJg",
"key_ops":["encrypt","decrypt"],
"kty":"oct",
"kid":"mp"}
      
       
     
  

             
            
       
   
          
          
          
           
         
          
           
          
           
          
          
          
   
         
           
             
            
            
      
 
             
        
           
           
             
             
          
          
            
          
          
           
            
            
          
  

          
              
             

          
       
 
 
 


      
      

   
  
    
        
     
     
   
      
     
    
    
  
  
  
  
 
  
   
    
    
   
   
   
         
 
     
        
  
           
       
          
  

   
            
            
           
           
      
      onepassword:   
//team-account/add      email server
 key       
onepassword://team-account/[email protected]
&server=https://example.1password.com&key=A3-8MMQJN-MZ64CY-2SDB4-RPX3T-V52Q3-N2C84
       
      

            
             
      
{ "accountKeyFormat" : "A3",
"accountKeyUuid" : "GWM4R8",
"sessionID" : "TRYYDRPO2FDWRITHY7BETQZPN4",
"status" : "ok",
"userAuth" : {
"alg" : "PBES2g-HS256",
"iterations" : 650000,
"method" : "SRPg-4096",
"salt" : "WSwigQtQpxqYAri592W1lg"
} }
     
      
       
 
            
          
       
           
            
          
          
            
          
           
           
  
  

        
     
{"encPriKey": {
"..." },
"encSymKey": { "..." },
"encryptedBy": "mp",
"pubKey": { "..." },
"uuid" : "c4pxet7a..."}
      
   encryptedBy  
     
      

           
           
        
          
            
          
            
   
{ "encPriKey" : { "..." },
"encSymKey": {
"kid": "mp",
"enc": "A256GCM", "cty": "b5+jwk+json",
"iv": "X3uQ83tlrdNIT_MG",
"data": "gd9fzh8lqq5BYdGZpypXvMzIfkS ...",
"alg": "PBES2g-HS256", "p2c": 650000,
"p2s": "5UMfnZ23QaNVpyeKEusdwg" },
"encryptedBy" : "mp",
"pubKey" { "..." }, "uuid" : "c4pxet7a..." }
     
       
       p2s 
      
 alg  p2c   
      

            
{ "encPriKey" : {
"kid": "c4pxet7agzqqhqg9yvxc2hkg8g",
"enc": "A256GCM", "cty": "b5+jwk+json",
"iv": "dBGJAy3uD4hJkf0K",
"data": "YNz19jMUffFP_glxM5Z ..."},
"encSymKey": { "..." },
"encryptedBy" : "mp",
"pubKey" {
"alg": "RSA-OAEP-256", "e": "AQAB",
"key_ops": ["encrypt"], "kty": "RSA",
"n": "nXk65CscbXVuSq8I43RmGWr9eI391z ...",
"kid": "c4pxet7adzqqvqg9ybxc2hkg8g" },
"uuid" : "c4pxet7agzqqhqg9yvxc2hkg8g" }
     
  
  

   
           
     

     

       
     
     
      
      
     
      
            
         
 
          
             
         
           
  

      
           
             
    
                 
     
     
       
     
      
      
 
             
         
       
         
       
      
    
      
     
       
        
        

            
        
           
           
         
    
           
            
            
          
                 
     
       
      
    
            
          
           
  
          
            
         
             
           
         
    
       
     
      
     

  

User
1P client
1P server
       
     
    
     
       
     
     

User
SSO sign-in page
1P client
1P server
SSO provider
      
     
        
     
     
     
       
      
     
      
    
     
     
  

    
        
          
  
             
          
           
     
          
           
             
           
         
         
 
 
          
                
        
      
  
           
             
     
             
         
      
       
          
       
          
             
         
            
            
           
            

  

  
           
         
           
          
         
           
             
           

                 
     
    

         
           
          
            
          
         
          
     
           
         
 
            
           
          
              
    
         
         
            
           
           
          

          
         
         
         

           
           
  

        
          
    
         
 
              
         
         
         
       
         
         
         
          
          
           
          
         
           
          
          
          
         
         
        
         
  
    
           
            
            
          
        
         
 
          
          
        
         
  

  
new device server existing device
  


  
    

 



 








     








    












  






       
      
     
     
     
     
   
  

        
          
        
         
        
          
          
         
          
         
          
          
         
             
         
  

 
           
           
        

 

      
      

           
      
Story 6: A week in the life of revocation
        
   
        
       
            
        
         
        
          
            
        
         
  
         
        
          
        
         
        
          
         
    
          
         
       
         
         
          
          
         
         
    
  

  
            
           
            
           
            
            
           
           
           
 
        
        
    
  
             
             
          
         
           
           
          
  
    
      
 
        
         
         
  

 
             
          
          
             

           
         
            
            
             
Story 7: A day in the life of read-only data
         
       
           
      
          
          
      
         
        
          
        
         
         
          
          
 
         
    
          
            
 
        
        
        
        
      
 
        
           
           
           
         
          
 
          
 
  

      
         
           
Import          
            Write
         
         
          
           
       
           
          
         
    
           
          
          
           
  
             
          
           
       
   
          
            
            
        
            
            
          
         
  

Story 8: A day in the life of a concealed password
         
       
          
           
           
         
    
        
          
         
      
       
     
         
         
        
           
     
        
       
       
  

      
             
           
            
          

           
           
            
      
          
              
            
            
           
  
          
           
            
             
  
            
          



      
             
           
             
            
             
              
  
  

 
          
           
       
         
           
         
        
            
   


     
       
   
     
     
    
         
            

 
            
           
            
          
        

  

   
   
     
      
    
 
          
           
          
     
            
            
     
            
          
       
           
         
          
             
           
          
          
            
  

            
    
 
        
           
         
       
          
       
          
 
        
       
           
    
           
     
            
          
         
         
            
            
   
        
           
 
          
           
 S   
        

   
  
        
            
          
            


  

 
Bob S Carol







  
  
 
 
  














       
      
 
         
 
      
     
   

       
 
        
             
           
  
            
         
   
            
           
          
          
        

       
  
           
  


       
     
        
   
  

            
         
            
         
          
            
          
  
          
     
 
 
         
    
        

     
            
   

           
             
         
     
      
        
  
         
        
          
         
       
 
          
            
           
           
         
           
           
          
  
         
      
          
           
  

            
          
        
            
          
   
        
           
   
1P_RECOVERY_KEY_AUTH_v1    
           
         
1P_RECOVERY_KEY_ENC_v1      
           
      
1P_RECOVERY_KEY_UUID       
            
           

            
           
            
          
        
            
            
  
          
 
           
      
           
          
  
         
          
            
         
  

          
 
          
        
  
           
             
          
            
              
           
  
             
          
  
          
 
          
  
             
  
  
           
          
         
              
          
           
     
 
         
           
           
           
             
  

            
           
   
  

  
           
      
          
            
          
   
            
         
        
           
      
       
          
           
        
        
  
    
      
     
    
          
           
         
           
         
         
         
     

    

      
   
      
       
   
           
      
           
        
           
  
        
          
  

        

 

   
           
           
    

      

      
        
      
      
     
 
  
          
         
         
               
    
       
       
           
     
           
      
           
   
           
          
 
            
          
   
        
           
         
            
         
           
         
           
          
    
          
         
  

          
            
            
         
          
      
         
           
           
    
        
            
          
               
 
 
         
           
          
             
  
 
        
           
            
    
  
         
 1password-credentials.json    

{ "verifier": { ... },
"encCredentials":
{ ... },
"uniqueKey": { ... },
"version": "2",
"deviceUuid": "22e ..." }
      
     
   
        veri-
fier            
 encCredentials      
          uniqueKey
           
 
  

 
        
        
     
"encCredentials": {
"kid": "localauthv2keykid",
"enc": "A256GCM",
"cty": "b5+jwk+json",
"iv": "VSu ...",
"data": "AZ1H0WprT ..."}
   encCredentials 
        
   
      
   
          
          
        iv
          
  
type s t r u c t
 s t r i n g
s t r i n g
s t r i n g


 s t r i n g
    
      
       
      
     
      
      
   
       example.1password.com
         
             
        
 

           

       
       
    
     


           
          
{ "verifier": {
"salt": "Em ...",
"localHash": "Yvra ..." }
    
          
          
  

     
 
         
          
           
        



     
     
   
          
            
"uniqueKey": {
alg": "A256GCM",
"ext": true,
"k": "DCpU ...",
"key_ops": ["decrypt", "encrypt"],
"kty": "oct",
"kid": "lyt ..." }
     
      
      
   
     uniqueKey

   

      
      
       
      
      
     
    
         
         
 
                  
      
      
 
           
          
          
            
            
          
         
  . 

        
{ "alg":"ES256",
"kid":"vlm...",
"typ":"JWT" }
      

 kid         
             
        
  

          
             
           
            
        

 

   
           
          
         
            
         

           
            
           
      
{ "1password.com/auuid":"XRS ...",
"1password.com/token":"pMb ...",
"1password.com/fts": ["vaultaccess"],
"1password.com/vts":[{
"u":"57o...", "a":48}],
"aud":["com.1password.connect"],
"sub":"6YUT ...",
"exp":1625961599, "iat":1618167578,
"iss":"com.1password.b5",
"jti":"j24 ..." }
     
  auuid   
    sub   
      
 fts    "vaultac-
cess"
   
token     
       
      
     
 
             
   
   
     vaultaccess   
             
  
           
     
          
           
  

           
 
           
   

       
        
 
           
  
         
           
        
            
       

             
         

         
  
  

 
         
         
            
       
  at-rest        
         
           
             
     
         

           
           
        
    
        
               
           
           
         
       
         
  
          
     integrity authenticity  conden-
tiality

       

   
      
     
    
    
      
     
    
  
            
           
         
        
  

          
    
            
             
    defense in depth
          
            
          
          
             
        
   
 3 3 3
  3 3 3
  3 3 5
  3 5 5
      
     
       
   
     
 
          
           
          
            
         
  
          


    
      
    
            
           
           
           
       

           
           
          


            
    
        
  

          
           
    
        
         
           
            
        

 

     
    
  


         

   
    
          

  
         
          
            
           
          
     
             
      
 
         
           
       
     
          
          
           
             
         
         
     
        
          
             
           
  

 
   
         
         
          
     users     
          
 uuid id  account_id   account_id  
  accounts  id        
    
        
            
          
          
users     account_id    
id    accounts 
 accounts     id      
account_id    vaults 
vaults     id      vault_
id    vault_items 
vault_items     encrypted_by enc_overview
 enc_details      
          

       
         
      
          
       
         
             
  

          
           
vault_items    vault_id    
vault_id    user_vault_access   enc_overview
 enc_details   vault_items    
     enc_vault_key    
user_vault_access     
user_vault_access      id   
users     id    vaults   
enc_vault_key    user_vault_access   
            
 
users          
     accounts     
 users    pub_key      
    
          
    user_vault_access     
          
              
         
            
           

            
         
          
           
  
           
         
           
           
  
        
          
          
       
  

    
        
        
      
         
    
         
      

   

     
       
       
    
       
      

   
        
           
     
     
accounts       
         
       domain  
team   avatar      
accounts    id 
devices          
         
       last_auth_ip 
 client_name  client_version  name
 model    os_name   os_
version       client_user_agent
groups           
 groups       group_membership
 group_vault_access      
  group_name   group_desc 
 pub_key   avatar
invites       
acceptance_token       
       user    
         
first_name   last_name    email
signups         
        name  
    email
users        
         
  

      first_name  last_name
  email       
 lowercase_email     pub_key 
  avatar
          
           

      
    
 
       
       
      
        
  


   
           
         
     
           

   
 
      
   
       
            
         
      
     

        
      
  
         
           
          
            
            
           
          
         
        
  
         
          
   
  

            
            
           
     
            
            
          
  
           
         
           
   
          
           

            
          
         
    
  
         
      
        
       
    
   
  
         
         

     
         
   
     

!
         

  

   
         
            

         
        
        
           
          
           
   
           
            
         
            
         
           
     
          
       
          
          
          
  
         
          
  
   
   
     
      
    
 
            
           
           
          
   
             
           
         
!
         
      
  

   
      
      
     
      
       
   
      
     
     
           
         
           
           
       
      
      
      
      
       
       
       
       
     
     
          
          
         
  

         
     
            
          
             
             
 
            
             
              
            
     
Story 9: Mr. Talk is not a good team player
       
       
      
          
      
       
         

      
       
         
      
       
    
         
          
         
         
          
       
  

 
            
           
            
            
             
             
  
     
           
           
           
           
             
          
 
         
          
              
     
        
 
        
          
         
            
  
         
         
             
           
             
          
          
           
            
  

         

Story 10: A weak primary account password unlocks a stronger account
        
        
         
       
         
        
      
        
   
        
          
squirrelrabbit      
        
         
        
          
         
        
      squirrelrabbit
        
        
     
        
  
   
           
         
         

           
       
  
       
         
            
         
           
             
           
         
          
         
           
   
  

 
          
        
   
         
             
             
          
          
          
             
        
    
           
            
         
             
         
            

           
            
    
          
            
          
            
          
          
            

         
           
         
             

  

   
              
             
               
          
   
         
     
      
     
     

          
           
        
          
            
             
          
           
            
             
  
      
    
      
       
      
    
       
  
         
        
           
         
          
         
         
           
        
          
           
          
          
             
 
            
           
          
          
            
           
            
       
         
  

          
         
          
          
 
           
            
            
          
           
       
   
    [email protected]   
             
             
          
         
          
     
          
            
     
  
           
        
           
          
   
  


  
         

         
            
          
  
       
          
        
            
           
       
        
          
             
         
    

          
         
 
        
         
          
            
         
          
           
            
  

              
           
           
           
 

           
          
 
      
      
      
     
          
         
 
           
           
             
   
          
           
         
            
  
  
         
          
           
  
HH 

      
   
     

               
    
      
       
      
     
      
      
            
 
       

  
 
   

    
          
             
   
  

            
        
        
          
            
         

          
           
    
          
             
          
      
      
      
     

      
  
    
  
           
         
            
         
          
            
         
     
           
     
   
 
             
           
           
         
          
      



            
      
             
 
 
  

            
   
       discrete loga-
rithm           
         
           
     
    
   
         
 
    
     
    
      
    
      
     
    
       
       
      
        
      
       
   
  
             
          
  
          
           
          
           
          
      
   
      
    
      
      
     
    
       
      
      
      
     
     
     
      
    
    
       
       
          
             
     
  





   
          
           
            
  





   
             
           
     
          
          
           
     
  

           
           
           
            
           
        
  
Alice Bob
     
     
      
      
        
       
  
  
            
           
            
             
      
               
         
             
 
            
            
           
         
          
      
  
    
        
 
      
          
        
   
     
       
     
   
      
      
        
       
 


       



            
          
             
                
 
  


  
       
    
 
             
          

      
     
     
   
        
           
           
          
          
            
  
Story 11: Mr. Talk is the cat in the middle
          
          
      
 
         
          
  
   
       
   
    
        
        
       
        
       
 

        
           
         
           
         
         
          
       
          
     
   
           
        
          
          
 
     
          
    
           
           
  
              
          
  

           
               

 
   
  
      
      
      
  
    
      
        
          
            
           
              
           
            
      
  
           
                
           
    
 
           
            
              
            
    
        
           
             
           
         
             
          
 
            
        
           
      
     
      
            
            
  

           
          
          
             
           
     
   

          
        
            
          
          
          
               
           
         
          
         
 
      
     
   
 
     
    
            

          

         
       
       
    
   
        
         
         
          
          
           
         
         
           
           
      
      
      
    
    
     
     
   
  

  
             
             
          
            

  


 
        
 
         
         
        
                 
   
   
            
         
             

   
          
   

           
          
         
   

        
           
           
          

      
          
  

          
   
          
          
  

         
     

         
     
 
       
            
            
        
     
       
           
        
 
         
           
            
  
   
         
           
        
          
    
   

       
          
  

           
         
      
     
        
           
   
           
         
     
         
         

  
    
     
  
 
         
          
           
     
 
           
           
        
      
   
          

    
          

        
  
     
     
    
          
             
  


        
          
         
            
     

         
        
 
 
         
           
          
         
  
     
        
         
      
   
         


    

    
   
         
           
 
   
            
   
 
         
  
    
           
           
  

          
             
           
          
      
  
        
          
  
 
         
     

          
        
          
         
          
          
    

 

      

     
    
          
       
  

          
           
        
           
        
   
      
          
            
      
  

 
         
        
          
  
 
           
         
   
 
           
           
         
   
        
          

         

  
      

          
           
            
 
 
         
        
 
         
           
           
 
          
       
  

         
               
   
         
         
            
        

 

      
     

              

  
            
        
          
           
            
      
 
        
         
           
  

          
    

          
          
           
   
              
   
 
            
       
   
  

   
         
        
         
          
          
     
        
      
   
           
           
  
           
         
  


         
    https://datatracker.ietf.org/doc/
draft-irtf-cfrg-cpace/
          
    
       https : //support .
1password.com/opvault-design/   
        https://paragonie.
com / blog / 2017 / 03 / jwt - json - web - tokens - is - bad -
standard-that-everyone-should-avoid
         
       
         
  https://www.usenix.org/conference/
usenixsecurity16/technical- sessions/presentation/
dechand
         
    https://www.gnupg.org/gph/en/
manual.html   
         
       https://blog.1password.
com/cracking-challenge-update/
           
     https ://blog.1password.com/
you-have-secrets-we-dont-why-our-data-format-is-
public/
          
  https://www.troyhunt.com/extended-validation-
certificates-are-really-really-dead/
          
        
         
       

  

         
       http : / / www .
ietf.org/rfc/rfc7518.txt
         
      http://www.ietf.org/rfc/
rfc7517.txt
           
        
 http://www.ietf.org/rfc/rfc7519.txt
        
         
        http : / /
www.ietf.org/rfc/rfc3526.txt
   
    
  
        
      
         
  https : / / signal . org / blog / safety - number -
updates/   
         
       
       https : / / csrc .
nist.gov/publications/detail/fips/186/4/final
        
http://www.bolet.org/makwa/makwa- spec- 20150422.
pdf
           
      
    http://www.ietf.org/rfc/rfc5054.
txt
          
        
   http://www.ietf.org/rfc/rfc5480.txt
           
        
        

          
         
        
        
  https : / / www .usenix.org/conference/
soups2018/presentation/vaziripour
  

         
       
 http://www.ietf.org/rfc/rfc2945.txt
  


         

  

           
 
  

      

       
    
         
   
       

         
  

    
  

          


          
  
  

  
    
  

    
  
  

      
  

       

        
      

       
  
  

  

       

      

    
         
 
  
         
 
  

           
  

  
 
  

  
        
 
        
    
  

           


   
        
     
  

       
  

     
     
  

   
           



   
  

   
          
 
  


   
       

  
       
     
        
            
     

      

      
       
 
s/Account Key/Secret Key/g      
     
      
     
  
           


   
      
       
         

  

  
           
             
    

       
       


     
   
       

     
    
  
          
 

          

    

 
  
          
          
           
 
  


  
  