- Fix Twitter scraper to handle empty result list case.
- Use version 2 API for X (formerly known as Twitter) hunting.
- Fix error handling when an invalid unicode domain is passed to DnsScraper.
- Use oauth API for reddit scraping.
- Use oembed API for twitter scraping.
- update WOT schema again
- update WOT schema
- enforce full packet hash in nacl sig infos via flag (require_packet_hash in verify calls)
- more plumbing the dohash flag through
- the client field was in the wrong place and didn't agree with Go
- rename WoT attest -> vouch
- allow PGP signing keys for eldest
- Add sig3/Base::get_schema() and schema3/Node::debug_localize for transforming message-packed sig3 signatures to user-readable JSON objects.
- Support
assert_pgp_hash
optional argument, passed to KBPGP. - Return
reverse_sig
(along withreverse_sig_kid
) if found and verified.
- allow revoke for wot proofs
- WoT proof types
- generic stubbing support
- different schema checkers for binary values bottom bytes
- also allow arrays to be empty if flagged
- upgrade schema checkers for binary values
- fix rate limit reporting
- update facebook checker
- report rate limit
- small tweaks to team sig3, is_implicit and is_public bools are always there
- add
bot_settings
signature type
- bugfixes for featuresin 2.3.4
- team rotate links now have admin pinning sections (as in the chain3 links)
- export schema system, it's quite useful
- fix issue where network timeouts were not being assigned the right error code
- small fixes to chain17 from testing
- small tweaks from testing
- use node-fetch instead of request in proof scraper
- add encryption parameters to sig3 schema
- multiple PTKs per RotateKey link now possible, though we'll only accept 1
- public_chain -> parent_chain
- Sig v3 first implementation, and RotateKey
- Tighten up defenses against malicious redirectors
- Check types before comparing strings
- Backout 2.1.66, which has a compiled dependency
- Deprecate (new Buffer) and use Buffer.from
- Static getters
- NOOP, reverted feature
- Upgrade bitcoyne to support sapling addresses
- Fix subdomain validation in
GenericSocialBinding
- Allow subdomains in
GenericSocialBinding
- lowercase fix in GenericSocialScraper for
check_status
- GenericSocialScraper insists on lowercase inputs.
- Add GenericSocialScraper.
- Change constant
- Bug fixes
- Add
GenericSocialBinding
proof type, whereservice_name
is not predefined.
- Added specific error code for incorrect high skips.
- Add support for
high_skip
fields to point to the last high link.
- Add an
appkey_derivation_version
field to the per_team_key section of team signatures
- Tweak Reddit User-Agent
- Twitter URI rewrite to mobile.twitter.com
- Twitter change, so fix it
- Do not ignore post body in reddit proofs
- Ignore post body in reddit proofs
- Rename wallet -> wallet.stellar
- Check that { "version" : 1 } is correct for V1 links (and we're not lying about it)
- Check that the stellar account ID matches the signing wallet key
- Add support for wallet keys
- Bugfix in sigchainv2.
- liberalize twitter hunt/scrape since now they emlinkify Keybase.io
- tighten up GH regex
- Retire code=45, from legacy_tlf_upgrade, and change kbfs settings to code=47
- Legacy TLF upgrade -> KBFS in general (since we're also going to use it for TLF ID bindings)
- Add
ignore_if_unsupported
bool for backwards compatible links
- Be more paranoid about error strings, in case they ever wind up in HTML
- Better error message for sequence number violations
- legacy TLF upgrade links
- change team.delete to team.delete_root and team.delete_subteam
- team.delete and team.delete_up_pointer
- team.rename_up_pointer
- rename shared_dh -> per_user_key
- in PUK, above, include 2 types of keys: signing and encryption
- expose unpacked outer also from proofs
- Inner links now have version:2
- Check that the version out the outer matches the inner
- Fix bug in chainlink v2 verification
Support for team.rename_subteam
Various team fixes
New features:
- Basic and rough teams support
New Features:
- Shared DH key support
Bugfix:
- Wrong proof type for sibkeys in v2
Feature:
- Support for V2 chainlinks
Bugfix:
- Facebook proof parsing got confused by names that looked like links.
Bugfix:
- The minimum username length for Facebook was too high.
Feature:
- Flag to skip critical clock skew check in C/I
Bugfix:
- Check that ctime is valid before checking etime
Feature:
- Disallow sigs that were created too far in the past or the future, i.e., if the user's clock is skewed.
Bugfixes:
- Handle crasher in logins with null email addresses
Bufixes:
- Handle -- decoding properly in Facebook proofs.
Bufixes:
- Facebook support that works even for private profiles.
Feature:
- Better bitcoin checking, and add zcash support
Feature:
- Add an update_settings signature type
Bugfixes:
- Add fields for revoking
Bugfixes:
- Allow device revokes along with key revokes
Bugfixes:
- Make the Facebook username normalization handle dots properly.
Bugfixes:
- Make the Facebook CSS selectors stricter
Bugfixes:
- Fix FB usernames with digits in them >.<
Features:
- Preliminary Facebook support
Features:
- Better debugging for reddit
Bugfix:
- Make github base64-finder more lenient, so it works with windows-introduced newlines in keybase sig format
Bugfixes:
- Fix regressions in reddit proofs (missing _check_api_url function)
Bugfixes:
- Workaround new coinbase HTML style
Features:
- Bitbucket support (thanks to @mark-adams)
- Allow 0-time expirations in sig gens
Bugfix:
- Unbreak the site, don't return our trimed JSON
Bugfix:
- Disregard trailing whitespace in JSON when checking for non-acceptable characters and strict-mode byte-for-byte comparison
Enhancement:
- Strict JSON checking
Enhancement:
- Use kbpgp to generate PGP key hashes
Bugfix:
- Fix a crash when generating
eldest
links.
Bugfix:
pgp_update
links now put PGP key metadata in a separate stanza instead of thekey
stanza.- PGP keys' fingerprints are validated now.
Bugfix:
pgp_update
links now take a dedicated KeyManager for the PGP key being updated
Retired feature:
- Strip out dualkey, they never made it into the wild
Feature:
- Sigs which add PGP keys now include a hash of the armored key
- Add a new sig type for updating PGP keys which also includes the full hash
Bugfix:
- Sometimes we just want a generic chainlink; in that case, don't worry about checking optional sections against the link-specific whitelist.
Enhancement:
- Add better error messages when invalid sections are found
Fix embarrassment:
- Rename internal methods in SubkeyBase to be more sensible
Bugfix:
- Update
eldest
andrevoke
statements to have an optionaldevice
section.
Feature:
- Each sigtype now has required and optional sections of the
body
. If there aresections
in the body not that don't correspond to the sigtype, it will now be considered invalid.
Bugfix:
- Update auth sigs to put
nonce
andsession
inbody.auth
instead ofbody
directly.
Bugfix:
- Initially find Reddit proofs by looking at the user's submissions, not by scraping /r/KeybaseProofs
Bugfix:
- Bugfix in the previous, handle empty TXT lookups too
Feature:
- Allow third-party DNS library, so we can interoperate with broken Node v0.12 DNS TXT resolver: nodejs/node-v0.x-archive#9285
Bugfixes:
- For dualkey sigtype
Bugfixes:
- Fix crasher with reddit scraping
Security upgrade:
- Require reverse sigs for sibkey
Features:
- Allow dual sibkey/subkey provisioning, useful for single-transaction workflow in passphrase update.
Features:
- Allow update of passphrase via signed statement
Features:
- Allow an expanded lookup table of proof types, for testing purposes.
Features:
- Expose some hidden base classes for testing purposes.
Features:
- Allow
expire_in
for signatures - Allow passing
ctime
in for signatures, and actually use it - Add a
reverse_sig_check
method to Subkey that we can call directly.
Bugfixes:
- Allow revocation of keys via key-ids in sig links
Bugfixes:
- remove debug code
- Cache the ctime on sig generation so that if we call @json() twice in the case of reverse sigs, we'll get the same blob both times. Features:
- pass back the reverse signature payload in sibkey signatures
- Expand upon reverse sig; do it over the whole JSON object.
Nit:
- s/parent/delegated_by/. This is a better name.
Features:
- Expanded reverse key signatures, and renamed fields. This might break existing test data!
Feature:
- Use KMI.can_sign() and not KMI.get_keypair()?.can_sign() Only works in KBPGP v2.0.9 and above.
Feature:
- New sigchain link type: eldest, for your self-signed eldest key. It's synonymous with web_service_binding.keybase but should only happen at the start of a sigchain.
Tweaks:
- Session object in pubkey login
Bugfixes:
- the return format of dns.resolveTxt changed in Node v0.12.0; workaround it with this fix. Should still work for earlier nodes.
Tweaks:
- Explicit parent_kid for subkeys
Tweaks:
- Strict reverse sig handling
Security tweak:
- Sign a more descriptive reverse-key signature
Scraper tweak
- Be more liberal about generic web sites; allow raw '\r's as line-ends
Change:
- move device up one level in the JSON structure
Additions:
- The 'device' signature
Tweaks:
- rename desc to device
Tweaks:
- Sibkey and subkey signatures have a "desc" field for description, not a "notes field"
Bugfix with the previous fix
Bugfixes:
- Sometimes kids() can't be computed
Features:
- Sign
eldest_kid
into key blocks (Issue #15)
Bufixes
- Various
Bugfix:
- All @veganstraightedge to use his twitter handle (>15 chars)
New features:
- lots of architectural improvements for keybase/keybase#204
- Use either PGP or KB-style packets, sigs, and keys in all places.
Nits:
- Error message for cloudflare
Bugfixes:
- Make a better coinbase warning...
Features:
- Say if it is tor-safe or not. DNS and HTTP are not...
Features:
- New proof types for subkeys (think delegated app keys).
- Begin to work in private sequences (need a separate type for those)
Bugfixes:
- robustify _check_ids, and don't crash if short_id or id is null.
Bugfixes:
- Allow '0's in coinbase names. Thanks to @dtiersch for the PR.
- Yet more HackerNews fixes; only allow a proof posting if we can lookup their karma. For dummy users, the JSON endpoint will yield null, which means they won't be able to show their profile, either
- More HN fixes --- don't normalize usernames with toLowerCase(); also warn that it's slow.
- Use the FireBase.io API for hackernews
- Hackernews logins are case-sensitive?
- See here for more details: https://news.ycombinator.com/item?id=6963550
- Resolves keybase/keybase-issues#911
- Bugfix for an HN failure with the command-line
- HackerNews
- Arbitrarily cut a 1.0.0 release
- Use the correct UserAgent format
- closes keybase/keybase-proofs#899
- Reddit proofs
- Coinbase proofs
- Factor out some common code, but more work to go on this.
- More twitter API stuff
Features:
- twitter API calls to get follower_ids friend_ids
Features:
- ws_normalize in Twitter proofs. Address keybase/keybase-issues#822
Features:
- Support for announcements
Bugfix:
- Don't include a
revoke : { sig_ids : [] }
stanza if we don't need it
Bugfixes:
- Fix a bug with revocation in which we weren't providing a default argument to _json(), which was crashing the proof generation.
Features:
- Add support for cryptocurrencies
- Allow any signature to revoke previous signatures
Features:
- foo.com OR _keybase.foo.com are valid DNS TXT entries now...
- Recompile for ICS v1.7.1-c
Bugfixes:
- Better debug for keybase/keybase-issues#689
Bufixes:
- Address keybase/keybase-issues#695, don't hard-fail if .well-known is 403.
Bugfixes:
- Interpet HTTP 401 and 403 as permission denied errors
Features:
- Add merkle_root for all signatures
Bugfixes:
- Remove iced-utils dependency
Features:
- Support for DNS proofs
- Support for foo.com/keybase.txt
Bugfix:
- Ensure that ctime and expire_in both exist.
Bugfix:
- Be more careful about timeouts
Bugfix:
- Error in the previous release, we need to allow some slack before the proof due to GPG client comments that might appear part of the signature block.
Features:
- Add the ability to sanity check the server's proof text
Features:
- Add Base::proof_type_str which just does a lookup against the lookup table
Bugfixes:
- Strip out debugging output
Features:
- Include some client information in proofs
Features:
- Add a new "generic_binding" type of proof/signature checker, which will happily check username/key against any proof signed by that user, which contains the user's username and UID.
SECURITY BUGFIXES
- Regression in last night's bugfix that let any proof go through in website proofs.
Bugfixes:
- Ignore DOS "\r"s in Website and Github proofs
- Do a better "existing" check for Websites, which was broken.
Bugfixes:
- more case insensitivity
Bugfixes:
- Case-insensitive username checks
Features:
- Extra safety check for IDNs; if node's url module breaks, we'll throw an error
- New 'resource_id()' for remote key proof objects.
Features:
- Prove you own a website
Bugfixes:
- Handle twitter usernames that are numbers
Features:
- Allow proxy'ing of scraper calls
- Allow for ca's to be specified, useful when using a self-signed proxy above.
Bugfixes:
- Loosen up checking for twitter proofs, allow @-prefixing.
- Better debug logging flexibility, and a cleanup
Bugfixes:
- Twitter proofs were broken, with hunt v hunt2
Features:
- Add debugging for proofs that are inexplicably failing.
- Inaugural changelog