Fixing North Korea's KCNA Webpage

posted on 2022-03-18

I occasionally have skype calls with computer programmers in North Korea, and one of the things we talk about is how to improve their internet infrastructure. Recently, we talked about how their kcna.kp webpage was using javascript incorrectly. This error prevented other websites from linking to articles published on kcna.kp and Google from searching those articles.

This minor technical problem had geopolitical implications. KCNA is the main newspaper in North Korea, and policy wonks closely analyze KCNA’s articles in order to better understand the North Korean government. A broken KCNA website makes their jobs harder and reduces the quality of discussion about North Korean policy.

As of 22 February, these problems with the KCNA webpage are now fixed.

To illustrate the changes that the KCNA web developers made, we’ll use the Internet Archive’s Wayback Machine to look at old versions of the website. The first snapshot of the kcna.kp webpage is from 20-April-2011.1 The front page shows Kim Jong Il performing on-the-spot guidance, and is the sort of picture that wonks go crazy over:

The webpage is reasonably nice looking, but if you click on any of the article links in the snapshot page, you’ll notice that they don’t work anymore. There’s no way to see the contents of these older articles or their associated images.

Inspecting the HTML source code we can see why. All the link tags look something like

<a href="javascript:onNews('specialnews','2011','410796')">

When you click the link, your browser calls the javascript onNews function. This function is custom written for the KCNA webpage, and makes an AJAX call to display the article’s contents. Unfortunately, web crawlers cannot access the contents of these AJAX calls unless special procedures are followed, and the KCNA webpage did not follow these procedures. So the Internet Archive was not able to archive these links, and this bit of history is lost.2

The Wayback Machine has collected 2395 more snapshots of the KCNA webpage up through today. Looking through these records we can see that the kcna.kp website was redesigned in January 2013, and this redesign broke the webpage even more. The redesigned webpage uses javascript even for displaying the main body of the webpage, and so not even the homepage can be archived. The snapshot from 1-January-2013 is the last working snapshot before this redesign.

After 9 years, the webpage was finally fixed last month on 22-February-2022. The new webpage looks like:

The important part, however, is the underlying HTML code. The link tags now use standard HTML to include the URL directly in the tag with no javascript. For example, the link to the top article about Kim Jong Un above looks like

<a href="/kp/article/q/320150e5ae8e9bc8fdf3d6b8547eaeaf.kcmsf">

Crawlers are able to follow these links. So now, after a 9 year hiatus, the internet archive is once again able to archive articles from the KCNA. You can view the article above permanently archived in the Internet Archive repository along with 26 associated pictures. These automated archives of the KCNA are especially important for Western researchers because the KCNA is known to have altered historic articles in response to domestic purges.

Furthermore, Google3 is now able to index the KCNA’s articles. So analysts can do searches like site:kcna.kp united states to find KCNA articles mentioning a topic of interest like the United States:

These usability improvements will help Western researchers navigate the KCNA’s published articles and learn about the DPRK. But there are still unfortunately some major problems with the webpage.

For example, if you click on any of the google links above, you’ll be taken to the “secure” webpage using the HTTPS protocol (instead of the HTTP protocol). Ordinarily, that’s a good thing, but the KCNA webpage uses a self-signed certificate, so you get a scary looking error message. On firefox, it looks like:

At first glance, this error message makes it look like the KCNA webpage might have something dangerous like a virus on it. That’s not the case though. The message just means that the webpage isn’t properly encrypted.

The North Korean government wants to fix these problems, and we should too. It’s in both their interest and ours to improve the communication between our countries’ foreign policy experts. Unfortunately, the current US sanctions regime makes this difficult. I have a standing invitation from my North Korean colleagues to visit them and teach about modern web standards, but the US has banned American passport holders from entering North Korea. So American sanctions are effectively preventing North Korea from improving their internet.


  1. Prior to 2011, the KCNA was hosted online at http://kcna.co.jp, and the Wayback Machine has archives going back to 1997. Like most other webpages of that era, the kcna.co.jp webpage used simple HTML and had a rather crude appearance. The switch to the .kp ccTLD also entailed a rewrite of the interface to make it prettier and more modern. This rewrite introduced the javascript bugs described in this post. An archived post from North Korea Tech describes the switch from the kcna.co.jp domain to kcna.kp.

  2. Technically, the contents of the KCNA articles themselves are not lost, they’re just much more difficult to access. Libraries maintain print copies of KCNA publications, and there is a custom archiver/search engine https://kcnawatch.org that was built specifically for tracking North Korean media. But the average policy researcher or reporter doesn’t have access to these resources, and so from their perspective this history was lost.

  3. Other search engines are able to index kcna.kp now too, but the process takes time, especially for low traffic webpages. As of 22-Mar-2022, Yandex had indexed kcna.kp, but Bing and Baidu had not.