Text Messages Are Being Censored in Canada


  • Note taken on [2019-11-22 Fri 08:30]
    This might not be an act of censorship. There might be another explanation. I started to look at the source code and RFCs this morning to better understand. I am very short on time at the moment and I probably will continue to be short on time until after Christmas unfortunately. If you would like to help, please contact me.
  • Note taken on [2020-02-13 Thu 05:03]
  • Note taken on [2020-02-14 Fri 04:39]
    • Updated submissions with new twilio (us) to iPhone (us)
    • cleaned up the comment field

What is this about?

Yesterday, I discovered that if I send a text containing the words: secure communication, it will never arrive at the recipients text messaging client. Something is censoring text messages in Canada.

What devices and carrier services are affected?

I do not have much data on this. I only discovered this at the very end of the day yesterday. Here is what I have been able to manually verify so far:

Sender Make Receiver Make Sender Carrier Receiver Carrier censored
Android Android Koodo Koodo yes
Android iphone Koodo Bell yes
iphone Android Bell Koodo yes
iphone iphone Bell Bell yes

Exactly what is censored?

In order for the text to be censored it must contain the exact words, secure communication, anywhere within the message. It is also important that the words, secure communication, are separated by no more than a single space and are lowercase. The censorship prevents the entire message from being delivered. I have only tested this using SMS and MMS protocols and found that MMS is not affected by this particular censorship. Here are some examples:

Message Censored? Comment
secure communication True
secure communication False two spaces separating keywords
secure communication. True trailing period
Secure communication False
secure Communication False
Any Leading Text secure communication True
secure communication any trailing text True
Appended leading textsecure communication True
secure communicationappended trailing text True
securecommunication False
leadingsecure communicationtrailing True

My testing methodology was manual and far from comprehensive. Someone needs to automate a test that sends random combinations of words from various devices and carrier services to get a better picture of the nature of the censorship.

This poses some questions

At this point all I have been able to determine is that the words, secure communication, are being censored by something when sent using the SMS protocol. I do not know if the censorship is taking place on the devices themselves, the local short message service centre, or something else. I am now wondering:

  1. Who is behind the censorship?
  2. Do they have a publicly accessible disclaimer stating exactly what they are censoring and why?
  3. Is this censorship legal in Canada?
  4. What else is being censored?

Censorship in Canada affects all Canadian citizens as well as all citizens of other countries that correspond with Canadian citizens. If you are concerned by this act against our civil liberties, then consider writing your MLA and the Canadian Civil Liberties Association.

Discussed on Hacker News

I posted this article on Hacker News and started this discussion in a thread.


I copied some details in the table below. The first 3 are my own tests. Records are paired by sender then receiver. If the test was bidirectional, then I will add vice versa in the second row comment field. Blank fields were not provided by the submitter. If a message containing secure communication was received, then !Affected will be added to the first comment field, otherwise it will contain Affected. Messages have double quotes around them so that multiple messages can be distinguished from one another. If a message actually contains quotes then it will be escaped using a backslash.

There are important fields that I am massing here. Such as whether or not data and WiFi are turned on which is important in the case of iPhone. I might move this table to its own page and re-organize it.

Make OS Protocol Carrier Region Text Comment
Nexus 6P Android 8.1.0 SMS Koodo Alberta, Canada see above Affected
Nexus 6P Android 8.1.0 SMS Koodo Alberta, Canada
Nexus 6P Android 8.1.0 SMS Koodo Alberta, Canada see above Affected
iPhone iOS SMS Bell Alberta, Canada
iPhone Android 8.1.0 SMS Koodo Alberta, Canada see above Affected
iPhone iOS SMS Bell Alberta, Canada
iPhone XR iOS 13.2.3 SMS Fizz Québec, Canada “test”, “secure communication” “test” Affected
LG G7 Android SMS Koodo Québec, Canada “test”, “test”
SMS Telus Alberta, Canada “secure communication”, “secure communication does not work” Affected, vice versa
SMS & VOIP voip.ms
Samsung S10 Android SMS Virgin Mobile Quebec, Canada !Affected
Smsung A8 Android SMS Vidéotron Quebec, Canada
iPhone 7 SMS Bell Ontario, Canada “secure communication” Affected
Pixel 3 Android SMS Koodo Ontario, Canada
iPhone iOS SMS Public Mobile “secure communication” Affected
iPhone iOS SMS Rogers vice versa
SMS Freedom Mobile Ontario, Canada !Affected
SMS Freedom Mobile Ontario, Canada
Twilio API SMS Twilio US “secure communication” !Affected
iPhone SE iOS SMS Verizon (MVNO) US “secure communication”


Your comment has been submitted and is now pending moderation

Be the first to comment on this article.