Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

A major problem is that the phone number space is densely populated. That is, of all possible numbers, a large fraction are actually assigned.

This makes the act of randomly or sequentially dialing numbers tractable, as many of those attempts will reach an actual connection. This is known as wardialing <https://en.wikipedia.org/wiki/Wardialing>.

In the United States (plus Canada and much of the Caribbean) , standard numbers are ten digits (three for area code, three for exchange, four for service number), which allows for 10 billion distinct numbers. Of these there are significant reserved blocks, but the total is still close to that. The total population is about 350 million, which means that there's roughly a 1:30 chance of a given dialed number connecting to an active account.

Actual utilisation and namespace exhaustion are harder to suss out, though numbers are currently constrained, with several area codes being fully exhausted by 2028, and the full system lasting to about 2061. See: <https://en.wikipedia.org/wiki/Numbering_Resource_Utilization...>.

I see two ways around this.

1: Expand the namespace. By having vastly more potential identifiers than subscribers, wardialing succeeds far less often. The two principle problems with this idea are that a) once a given number is known it's vulnerable and b) the resulting numbers are far less memorizable.

2: Implement a caller-callee relationship. Effectively, a caller would have to authenticate to the callee when making a call, and only approved callers would be passed through. This is effectively the role an old-school receptionist would serve at a business, permitting only select calls through to a principal employee. Because of limitations with the existing phone network, the caller's number alone is a poor identifier. Some other challenge would be required.

One option I've considered, which should be implementable with a VOIP service, would be to have individual "extensions" assigned to specific callers. A caller would dial the primary number, then be asked to enter an "extension", which would be restricted to the caller's originating number (so that different callers each have a unique assigned extension). The extension space would also have to be relatively large (to avoid random/sequential search), probably 10-100x the number of approved contacts at a minimum.[1]

Previously-unknown callers might go through a preliminary vetting and be dropped to a voicemail box or (preferably) be requested to text their message, preferably in a brief, text-only format, say 40--80 characters or so, enough to identify the caller but not to drop a massive spam load.

________________________________

Notes:

1. If a typical person has 100-1,000 contacts, the "extension" space would be roughly 1,000 to 100,000 values, perhaps 3--5 digits.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: