• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

hypothesis / h / 8770
69%
master: 97%

Build:
Build:
LAST BUILD BRANCH: realtime-update-v1-h-only-1
DEFAULT BRANCH: master
Ran 23 Oct 2015 11:37AM UTC
Jobs 1
Files 87
Run time 13s
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

pending completion
8770

push

travis-ci

nickstenning
Replace all uses of Group.hashid with Group.pubid

This commit removes all use of the Group.hashid property, and then
removes all the supporting infrastructure for hashids.

For posterity, it's worth noting the reason for this change: at the time
of writing, we are using hashids for two reasons:

1. To prevent users from guessing the URL for the "join a group" pages
   of groups they have not been invited to.

2. To avoid leaking details of the how many groups have been created
   through the use of an integer primary key in URLs.

Both of these are ultimately security requirements, and the
cryptographic properties of hashids are questionable at best:

    https://carnage.github.io/2015/08/cryptanalysis-of-hashids/

In order to avoid the possibility of having to remove hashids at a later
date, thus breaking many URLs, we are adopting a much simpler, much more
"stupid" (i.e. less "clever"), way of generating this "public IDs",
which now relies for its cryptographic properties on the system
CSPRNG[^1] rather than the algorithm or implementation of hashids. And,
frankly, if /dev/urandom is broken, we have bigger problems...

[^1]: "Cryptographically Secure Pseudo-Random Number Generator". See
      also: https://en.wikipedia.org/wiki/Cryptographically_secure_pseudorandom_number_generator

2499 of 3637 relevant lines covered (68.71%)

0.69 hits per line

Jobs
ID Job ID Ran Files Coverage
1 8770.1 23 Oct 2015 11:37AM UTC 0
68.71
Travis Job 8770.1
Source Files on build 8770
Detailed source file information is not available for this build.
  • Back to Repo
  • Travis Build #8770
  • ddef56fa on github
  • Prev Build on replace-hashids-with-pubids (#8764)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc