Caller ID war nie authentifiziert. Die Nummer, die auf einem klingelnden Telefon angezeigt wird, ist ein Wert, den die Ursprungsseite in ein Feld geschrieben hat. Während des größten Teils der Geschichte des Telefonnetzes konnte nichts auf dem Weg prüfen, ob sie dazu berechtigt war. STIR/SHAKEN ist das Framework, das diesem Feld eine Signatur hinzufügt, damit die Gegenseite das prüfen kann.
Was beim Angerufenen ankommt, ist nicht die Kryptografie. Es ist ein einzelner Buchstabe: A, B oder C.
Was genau fügt STIR/SHAKEN einem Anruf hinzu?
Es legt ein signiertes Token in den Identity-Header der SIP-Nachricht, die den Anruf aufbaut. Das Token sagt aus, wer für den Anruf bürgt und in welchem Umfang.
Das Token ist ein Personal Assertion Token (PASSporT), und die SHAKEN-Erweiterung dafür ist in RFC 8588 spezifiziert, einem IETF-Standards-Track-Dokument vom Mai 2019. Sie fügt dem Basis-Token zwei Claims hinzu. Secure Telephone Identity (STI) ist die Arbeit, die SIP eine authentifizierte Anruferidentität hinzufügt, und der erste Claim ist derjenige, den Sie sehen werden:
This provides three levels of attestation: a full attestation when the service provider can fully attest to the calling identity, a partial attestation when the service provider originated a telephone call but cannot fully attest to the calling identity, and a gateway attestation, which is the lowest level of attestation and represents the service provider receiving a call from a telephone gateway that does not support PASSporT or STI.
Der Claim selbst ist ein einzelnes Zeichen. RFC 8588 Abschnitt 4:
The "attest" claim can be one of the following three values: 'A', 'B', or 'C'. These values correspond to 'Full Attestation', 'Partial Attestation', and 'Gateway Attestation', respectively.
RFC 8588 verweist für die Definitionen auf ein anderes Dokument: "See [ATIS-1000074] for the definitions of these three levels of attestation". Dieses Dokument wird von der Alliance for Telecommunications Industry Solutions (ATIS) und nicht von der IETF veröffentlicht und ist nicht frei zugänglich. Die normative Grenze zwischen einem A und einem B liegt daher hinter einer Bezahlschranke, was ein Grund dafür ist, dass die Stufen so häufig aus zweiter Hand beschrieben werden.
Was bedeuten A, B und C?
A sagt: Der Anbieter weiß, wer Sie sind, und dass die Nummer Ihnen gehört. B sagt: Er weiß, wer Sie sind, aber nicht, dass die Nummer Ihnen gehört. C sagt: Er weiß beides nicht, weil der Anruf von woanders kam.
Die FCC, die US-Kommunikationsregulierungsbehörde, gibt eine öffentliche Darstellung in ihrem Second Report and Order on caller ID authentication, veröffentlicht unter 85 FR 73360 am 17. November 2020. Jede Stufe hält fest, was der Anbieter über den Anrufer und die Nummer bestätigen konnte. Die Worte der Regulierungsbehörde:
- A: "A provider assigns an A-level attestation when it is the entry point of the call onto the IP network, it can confirm the identity of the subscriber making the call, and the subscriber is using its associated telephone number."
- B: "A provider uses a B-level attestation to indicate that it is the entry point of the call onto the IP network and can confirm the identity of the subscriber but not the telephone number."
- C: "A provider uses a C-level attestation when it is the point of entry to the IP network for a call that originated elsewhere but has no relationship with the initiator of a call, such as when a provider is acting as an international gateway."
Bei C ist der Anbieter ein Durchgangstor und kein Ursprung, weshalb er für keines von beidem bürgen kann.
Deshalb ist die Stufe keine Bewertung. Ein völlig legitimer Anruf kann ein B tragen, weil der Anrufer eine Nummer präsentiert, die der Anbieter nicht vergeben hat und nicht bestätigen kann. Ein unerwünschter Anruf kann ein A tragen, weil die Entität, die ihn tätigt, ein bekannter Kunde ist, der seine eigene Nummer verwendet. Der Buchstabe beschreibt die Beweislage des Anbieters, nicht die Absicht des Anrufs.
Wer entscheidet, ob ich ein A bekomme?
Der Anbieter, der den Anruf signiert, entscheidet – anhand eines Tests, den er selbst definiert.
Dieselbe FCC-Anordnung besagt, dass jeder Anbieter seinen eigenen Test festlegt:
The method or process a provider uses to determine the legitimacy of the caller's use of a telephone number is specific to each provider. As a result, a provider's reputation is tied to the rigor of its evaluation process.
Es gibt also keinen externen Standard, den Sie erfüllen können, um Anspruch auf ein A zu haben, und keine Einstellung, die eines gewährt. Es gibt einen Anbieter, der entscheidet, ob er zwei Dinge über Sie festgestellt hat, und der die Reputationskosten trägt, wenn er dabei falsch liegt. Die praktische Version der Frage lautet nicht "how do I get an A", sondern "what has my provider established about me and about this number", und die Antwort auf die zweite Hälfte ist in der Regel die Caller-ID-Verifizierung. Caller IDs behandelt das Registrieren einer Nummer und den Nachweis der Kontrolle darüber – der Schritt, der ändert, was über Sie attestiert werden kann.
Nummern, die Ihnen vom Anbieter zugewiesen wurden, der den Anruf transportiert, stehen in einer anderen Position als Nummern, die Sie woanders besitzen und über diesen Anbieter verwenden. Der eigene Caller-ID-Leitfaden von Bird macht denselben Punkt von der anderen Seite. Er listet Anti-Spoofing-Frameworks unter den Gründen auf, warum eine anderswo beschaffte Nummer die Gegenseite möglicherweise nicht erreicht.
Bedeutet ein A, dass mein Anruf durchkommt?
Nein. Die Standards behandeln die Attestierung als Eingangssignal für die Entscheidung eines anderen.
Die FCC-Anordnung sagt, wofür die Stufen gedacht sind:
The STIR/SHAKEN standards envision these various attestation levels as information that can facilitate traceback and to enhance the spam identification solutions that terminating voice service providers enable for their customers.
Daraus folgen zwei Konsequenzen. Rückverfolgung ist der retrospektive Einsatz: Der zweite SHAKEN-Claim ist eine Ursprungskennung, die existiert, damit ein Ermittler einen illegalen Anruf bis zu seinem Eintritt ins Netz zurückverfolgen kann. Spam-Erkennung ist der Einsatz in Echtzeit. Es handelt sich um ein System, das vom empfangenden Netzbetreiber und seinem Analysepartner betrieben wird. Es nimmt die Attestierung als ein Signal unter mehreren. Ein signierter Anruf mit Stufe A kann trotzdem gelabelt werden, und why is my call labeled spam likely behandelt, wer das Label vergibt und welche Einspruchsmöglichkeiten bestehen.
Warum ist die Attestierung nicht angekommen?
Weil der Header nicht jede Route übersteht.
Die FCC-Anordnung beschreibt den Mechanismus klar: "if a call is routed at any point over an interconnection point or intermediate provider network that does not support the transmission of SIP calls, the Identity header will be lost." Ein Anruf kann am Ursprung korrekt signiert sein und bei der Gegenseite ohne etwas Verifizierbares ankommen, weil ein Abschnitt dazwischen nicht SIP war.
Dieselbe Anordnung merkt an, dass die eigene Reichweite des empfangenden Anbieters genauso wichtig ist wie Ihre. Er kann auf Authentifizierungsinformationen nur dort reagieren, wo er sie verifizieren kann. Wo der Header fehlt, gibt es nichts, worauf er reagieren könnte. Ein unsignierter Anruf bei der Gegenseite ist also kein Beweis dafür, dass der ursprüngliche Anbieter nicht signiert hat, und der Weg zwischen beiden ist nichts, was eine der beiden Seiten vollständig kontrolliert.
Attestierung ist ein starkes Signal, wenn sie ankommt, und stumm, wenn nicht. Behandeln Sie sie als einen Teil davon, beantwortet zu werden, nicht als den Mechanismus, der das bewirkt.
Kurz gesagt
Die Stufe beschreibt das Wissen des Anbieters, nicht die Qualität des Anrufs.
A, B und C geben an, wie viel der signierende Anbieter bestätigen konnte: den Anrufer und die Nummer, nur den Anrufer oder keines von beidem, weil der Anruf von anderswo kam.
Die Anforderung für ein A legt der Anbieter selbst fest.
Die FCC, die US-Kommunikationsregulierungsbehörde, sagt, dass die Methode zur Entscheidung, ob ein Anrufer eine Nummer verwenden darf, anbieterspezifisch ist und die Reputation des Anbieters an dessen Sorgfalt knüpft.
Eine Attestierung ist ein Eingangssignal für ein Label, kein Urteil.
Die Standards behandeln die Stufen als Material für Rückverfolgung und für die Spam-Erkennung, die der empfangende Netzbetreiber durchführt. Nichts davon bestimmt, was ein Endgerät anzeigt.
Die Signatur kann verloren gehen, bevor sie ankommt.
Ein Anruf, der über ein Netz geroutet wird, das SIP nicht transportiert, verliert den Identity-Header. Ein signierter Anruf kann also die Gegenseite ohne etwas Verifizierbares erreichen.