Srp
A set of Go functions for Secure Remote Password protocol implementation in 1Password Teams
Install / Use
/learn @1Password/SrpREADME
srp – A Go package for Secure Remote Password
srp is a Go language package for Secure Remote Password (SRP). It is an implementation of:
- RFC 2945: The SRP Authentication and Key Exchange System
- RFC 5054: Using the Secure Remote Password (SRP) Protocol for TLS Authentication
However, the hashing and padding scheme in this package is not interoperable with those specs.
It was developed by AgileBits to support part of the 1Password authentication process. Although there are some hooks and interfaces designed specifically for those purposes, this golang package may be of general use to others.
Get started
To install srp, use go get:
go get github.com/1Password/srp
Although the focus of this implementation is safety and ease of use (as opposed to speed), like all cryptographic tools, some understanding of its operation is required to not shoot yourself in the foot.
Read the package documentation for a discussion of user security responsibilities.
Contribute
Issues are appreciated. Forks leading to pull requests are appreciated even more. 😎
Gosec scans
To run the securego/gosec tool you need to have that installed. Then simply
gosec -fmt=json -out=path/to/where/you/want/results.json ./...
Related Skills
node-connect
334.5kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
82.2kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
334.5kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
82.2kCommit, push, and open a PR
