HN user

Ayesh

3,615 karma

Reach out at https://aye.sh :)

Posts21
Comments938
View on HN
www.youtube.com 1y ago

WWDC 2025 [video]

Ayesh
2pts4
www.docker.com 1y ago

Upgraded Docker Plans

Ayesh
1pts1
porkbun.com 2y ago

Domain Name Price Increase – October 4, 2023

Ayesh
6pts5
blog.thunderbird.net 3y ago

Thunderbird 115 “Supernova”

Ayesh
508pts297
github.com 3y ago

uBlock Origin works best on Firefox

Ayesh
438pts229
www.youtube.com 4y ago

I used a dumb phone for 6 months. here’s what I learned

Ayesh
4pts2
intellisec.de 4y ago

LaserShark: Establishing Fast,Bidirectional Communication into AirGapped Systems

Ayesh
1pts0
tools.ietf.org 5y ago

RFC 1855 – Netiquette Guidelines (1995)

Ayesh
1pts0
optout.aboutads.info 5y ago

Ad Choice – Opt-Out

Ayesh
2pts0
www.chromium.org 5y ago

Chrome Root Certificates Store Program

Ayesh
5pts0
status.vultr.com 5y ago

Vultr is having major downtime

Ayesh
1pts0
php.watch 5y ago

Performance Impact of PHP Exceptions

Ayesh
1pts0
php.watch 5y ago

Private Composer Repositories with Gitlab

Ayesh
1pts0
github.blog 5y ago

Token authentication requirements for API and Git operations

Ayesh
3pts0
news.ycombinator.com 6y ago

Ask HN: How do you detect user language in web sites

Ayesh
2pts3
community.letsencrypt.org 6y ago

LetsEncrypt: 2020.02.29 CAA Rechecking Bug

Ayesh
5pts1
www.phoronix.com 6y ago

Benchmarking Mozilla's Firefox Performance over the Past Two Years

Ayesh
2pts0
visalogy.com 6y ago

World's Passports Ranked (Visalogy Ranking)

Ayesh
4pts3
news.ycombinator.com 7y ago

Ask HN: A Good Alternative for ReCaptcha?

Ayesh
368pts199
blog.chromium.org 7y ago

Chromium: Notifying users of unclear subscription pages

Ayesh
3pts0
ayesh.me 8y ago

GitHub Pages custom domains HTTPS implementation review

Ayesh
2pts0
PHP's Oddities 2 months ago

PHP has quite a lot of oddities such as how loose comparisons (`==`) are made, numeric-strings, and type coercion. But the two oddities mentioned in the article are not that "odd" with a bit of context.

- PHP has `SplFixedArray`[^1] that work similar to the standard arrays you expect from other languages. SPL extension is always available in PHP 5.3+, it is not even possible to compile PHP without it anymore. There is no specific type for list-arrays and associative arrays, but there is an `array_is_list` function to quickly check it.

- For typed properties, if a property is not typed, it is effectively considered `mixed $var = null`. If the property is typed, and has no default value, then it is considered uninitialized, and not allowed to access.

[^1]: https://www.php.net/manual/en/class.splfixedarray.php

I think the previous post is talking about a search that will find the sibling domain names that have obtained certificates with the same account ID. That is a strong indication that those domains are in the same certificate renewal pipeline, most likely on the same physical/virtual server.

I'm surprised the ballot passed, unanimously even! I get that storing the DNS credentials in the certificate renewal pipeline is risky, but many DNS providers have granular API access controls, so it is already possible to limit the surface area in case the keys get leaked. Plus, you can revoke the keys easily.

The ACME account credentials are also accessible by the same renewal pipelines that has the DNS API credentials, so this does not provide any new isolation.

~It's also not quite clear how to revoke this challenge, and how domain expiration deal with this. The DNS record contents should have been at least the HMAC of the account key, the FQDN, and something that will invalidate if the domain is transferred somewhere else. The leaf DNSSEC key would have been perfect, but DNSSEC key rotation is also quite broken, so it wouldn't play nice.~

Is there a way to limit the challenge types with CAA records? You can limit it by an account number, and I believe that is the most tight control you have so far.

---

Edit: thanks to the replies to this comment, I learned that this would provide invalidation simply by removing the DNS record, and that the DNS records are checked at renewal time with a much shorter validation TTL.

Yes, and it's not that long ago, or I aged really quickly.

For code signing certificates and EV certificates, (and OV certificates, if they are even alive), this is still the case.

Microsoft had a very fair shot at redeeming themselves, but with how Teams, GitHub and all the AI crap they push into GitHub and Windows, it's clear they have not changed one bit.

Local meetups are very easy to get selected into, and they often have two or three speakers lined up, with a balance of speakers they know and are experienced, and new speakers.

Most of the time, the organizers are squeezed to find a speaker, so you are pretty much guaranteed to be offered a slot if you just ask the host.

I imagine it'll go against your talk getting into the shortlist.

But there are some conferences that ask and respect your preference whether you'd like the video recording to have your face or just the audio. But I have yet to see a conference that go as far as asking the audience to not take photos of the presenter, so it's pretty much moot if you do not want your photos published at all.

Considering how many ACME clients are available today with all sorts of convenient features, and that many web servers nowadays have ACME support built in (Caddy, Apache mod_md, and recent Nginx), I believe that people who don't automate ACME certificates are the people who get paid hourly and want to keep doing the same boring tasks to get paid.

https://github.com/letsencrypt/boulder

You can find a docker-compose.yml file to get some idea.

Appears to be using MariaDB.

They shut down OCSP responders and expiry email reminders, so there really is no need to have a database apart from rate limits, auth data, and caching.

For Certificate Transparency, they are submitted to Google and CloudFlare run trees but I don't think LetsEncrypt run their own logs.

As someone else mentioned, it's a non-profit, so I guess it's not technically possible to get acquired.

But I personally believe that the people behind LetsEncrypt genuinely care about the mission and will never sell out for their personal benefit.

If there was a list of organizations that bring the most impactful things to tech per each dollar received in donations and per each employee, ISRG will be up there at the top.

It's been a long time so this is my fading memory, but CAs used to generate a private key on their end and let you download both private key and the certificate containing the public key. The non-technical person who paid big money for the certificate then emails the zip file to the developer. That's when StartTLS wasn't that big back then either.

Just comically bad way to obtain certs.

Fifteen Years 8 months ago

This must be how winning in life feels like. I wish your family good health.

Everything after the '?' character.

It only strips known tracking parameters b(like those utm_ query params). It does not remove all parameters; if that's the case, YouTube video links will stop working.

Yes, I'm just as curious as you on _why_ does a staging setup needs the same amount of resources as prod.

All of my staging setups are on a ~$15 Hetzner server, with a GitHub Action to `docker compose build && docker compose up -d` remotely, with an Apache service with a wildcard certificate and dynamic host names. We have 3..n staging setups, with each PR spinning up a new staging site just for that PR.

It's been working with us for years, for a team of 10 developers.

If the certificate was issued with must-staple flag, then the server can refuse to connect if the handshake did not include an OCSP response.

web servers can refresh OCSP responses in the background and cache valid responses to add some tolerance against temporarily downtimes in the OCSP server.

I don't think so.

- Let's Encrypt: doesn't support it since May 7 this year

- Buy Pass: No longer offers free certificates, probably didn't have must-staple either

- Zero SSL, I didn't find any public links to check if they sign CSRs with it.

- Google Trust Services: Same as above

- Amazon Trust: Same as above, but it probably does.

Firefox has a a toggle `Query OCSP responder servers to confirm the current validity of certificates`, which is turned off by default.

Edit: It seems to be enabled by default! I've been using Firefox for as long as I remember, and don't setup Firefox afresh frequently.

I was a big fan of OCSP-stapling and must-staple. Both of which are slowly being discouraged; LetsEncrypt refuses to issue must-staple certificates since a few months ago, and I think they are shutting down OCSP servers, if not shut down already.

The idea with OCSP-stapling is that the webserver fetches the OCSP data, caches it for TTL ~24 hours, and staples it to the HTTPS handshake. That way, the browser does not need to query the issuer's OCSP servers, avoiding both performance and privacy concerns. Revoked certificates will continue to work for up to 24 hours, but that, IMO, is within an accepted range compared to CRL that can take a lot longer.

The downside is that the HTTPS handshakes now contain a bit more data, and we want to keep this as minimal as possible.

I live in a popular Digital Nomad friendly country, and myself included, work with Europe/American companies roughly matching their time zones.

Now, the people I work with know that I'm not really located in the same time zone, but I know people who don't bother to mention it. I rarely get phone calls, but I have a roaming connection active for banking/OTP/etc. Plenty of cheap cafes with great WiFi (500mbps+ almost everywhere), and several times cheaper too.