Archive for the ‘Censorship’ Category

A champion in Murmansk media quits because of censorship – The Independent Barents Observer

Gorodetsky is a veteran in Murmansk media. In 2005 he established the B-Port, a news agency that has developed into a leading newsmaker in the north Russian region.

Since then, much has changed in regional journalism.

On the 25th March, the director and editor-in-chief announced that he is leaving the company he created almost 15 years. The reason is growing censorship from regional authorities, he explains in a post on Facebook.

The situation is such that our news arena is rapidly changing, and not in a good direction, Gorodetsky says.

The opinions and posts that are published on our site suddenly have become unwanted and a source of irritation, he adds.

According to the editor, his news agency is now increasingly often contacted from above and told to remove or change contents.

He argues that there have appeared absurd prohibitions and strange limitations and that it now is considered undesired to express personal opinions that diverge from settled truths.

The news team at B-Port will continue to deliver contents, but now without Gorodetsky.

Over many years I have invested not only power and resources, but also parts of my soul. And of course I will not allow my soul to be wiped by my feet.

According to MMK News, Gorodetsky owns the B-Port together with regional politician Igor Morar. Reportedly, a recent issue of conflict has been the news agencys coverage of the coronavirus.

Read this article:
A champion in Murmansk media quits because of censorship - The Independent Barents Observer

Trump Is Now Openly Trying to Censor His Critics. He May Succeed. – Slate

') : ""; }, t.getDefinedParams = function (n, e) { return e.filter(function (e) { return n[e]; }).reduce(function (e, t) { return p(e, function (e, t, n) { t in e ? Object.defineProperty(e, t, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[t] = n; return e; }({}, t, n[t])); }, {}); }, t.isValidMediaTypes = function (e) { var t = ["banner", "native", "video"]; if (!Object.keys(e).every(function (e) { return s()(t, e); })) return !1; if (e.video && e.video.context) return s()(["instream", "outstream", "adpod"], e.video.context); return !0; }, t.getBidderRequest = function (e, t, n) { return c()(e, function (e) { return 0 t[n] ? -1 : 0; }; }; var r = n(3), i = n(115), o = n.n(i), a = n(12), c = n.n(a), u = n(10), s = n.n(u), d = n(116); n.d(t, "deepAccess", function () { return d.a; }); var f = n(117); function l(e) { return function (e) { if (Array.isArray(e)) { for (var t = 0, n = new Array(e.length); t n ')) : ""; } function ae(e, t, n) { return null == t ? n : J(t) ? t : Q(t) ? t.toString() : void j.logWarn("Unsuported type for param: " + e + " required type: String"); } function ce(e, t, n) { return n.indexOf(e) === t; } function ue(e, t) { return e.concat(t); } function se(e) { return Object.keys(e); } function de(e, t) { return e[t]; } var fe = ge("timeToRespond", function (e, t) { return t = e.length ? (this._t = void 0, i(1)) : i(0, "keys" == t ? n : "values" == t ? e[n] : [n, e[n]]); }, "values"), o.Arguments = o.Array, r("keys"), r("values"), r("entries"); }, 101: function _(e, t, n) { "use strict"; var r = n(102), i = n(72); e.exports = n(104)("Set", function (t) { return function (e) { return t(this, 0 >> 0, o = 0; if (t) n = t;else { for (; o = b.syncsPerBidder ? a.logWarn('Number of user syncs exceeded for "'.concat(t, '"')) : d.canBidderRegisterSync(e, t) ? (f[e].push([t, n]), (r = p)[i = t] ? r[i] += 1 : r[i] = 1, void (p = r)) : a.logWarn('Bidder "'.concat(t, '" not permitted to register their "').concat(e, '" userSync pixels.')) : a.logWarn("Bidder is required for registering sync") : a.logWarn('User sync type "'.concat(e, '" not supported')); var r, i; }, d.syncUsers = function () { var e = 0 Object(y.timestamp)(); }, s = function s(e) { return e && (e.status && !S()([O.BID_STATUS.RENDERED], e.status) || !e.status); }; function w(e, r, t) { var i = 2 i && (r = !1)), !r; }), r && e.run(), r; } function g(e, t) { void 0 === e[t] ? e[t] = 1 : e[t]++; } }, addWinningBid: function addWinningBid(e) { g = g.concat(e), x.callBidWonBidder(e.bidder, e, o); }, setBidTargeting: function setBidTargeting(e) { x.callSetTargetingBidder(e.bidder, e); }, getWinningBids: function getWinningBids() { return g; }, getTimeout: function getTimeout() { return S; }, getAuctionId: function getAuctionId() { return m; }, getAuctionStatus: function getAuctionStatus() { return b; }, getAdUnits: function getAdUnits() { return y; }, getAdUnitCodes: function getAdUnitCodes() { return d; }, getBidRequests: function getBidRequests() { return h; }, getBidsReceived: function getBidsReceived() { return f; }, getNoBids: function getNoBids() { return l; } }; }, n.d(t, "c", function () { return H; }), t.f = d, t.d = J, n.d(t, "e", function () { return Y; }), n.d(t, "h", function () { return f; }), n.d(t, "g", function () { return l; }), t.i = p; var C = n(0), s = n(9), w = n(42), a = n(26), o = n(78), j = n(11), _ = n(3), r = n(32), i = n(13), c = n(12), B = n.n(c), U = n(33), u = n(2); function R(e) { return (R = "function" == typeof Symbol && "symbol" == _typeof(Symbol.iterator) ? function (e) { return _typeof(e); } : function (e) { return e && "function" == typeof Symbol && e.constructor === Symbol && e !== Symbol.prototype ? "symbol" : _typeof(e); })(e); } function D() { return (D = Object.assign || function (e) { for (var t = 1; t e.getTimeout() + _.b.getConfig("timeoutBuffer") && e.executeCallback(!0); } function J(e, t) { var n = e.getBidRequests(), r = B()(n, function (e) { return e.bidderCode === t.bidderCode; }); !function (t, e) { var n; if (t.bidderCode && (0 t.max ? e : t; }, { max: 0 }), g = 0, b = v()(e.buckets, function (e) { if (n > p.max * r) { var t = e.precision; void 0 === t && (t = y), i = (e.max * r).toFixed(t); } else { if (n = t.length ? { value: void 0, done: !0 } : (e = r(t, n), this._i += e.length, { value: e, done: !1 }); }); }, 62: function _(e, t, r) { function i() {} var o = r(28), a = r(94), c = r(63), u = r(50)("IE_PROTO"), s = "prototype", _d = function d() { var e, t = r(55)("iframe"), n = c.length; for (t.style.display = "none", r(97).appendChild(t), t.src = "javascript:", (e = t.contentWindow.document).open(), e.write("

")); var s = v(b[r.size_id].split("x").map(function (e) { return Number(e); }), 2); a.width = s[0], a.height = s[1]; } a.rubiconTargeting = (Array.isArray(r.targeting) ? r.targeting : []).reduce(function (e, r) { return e[r.key] = r.values[0], e; }, { rpfl_elemid: o.adUnitCode }), e.push(a); } else u.logError("Rubicon: bidRequest undefined at index position:".concat(t), d, c); return e; }, []).sort(function (e, r) { return (r.cpm || 0) - (e.cpm || 0); }); }, getUserSyncs: function getUserSyncs(e, r, t, i) { if (!R && e.iframeEnabled) { var n = ""; return t && "string" == typeof t.consentString && ("boolean" == typeof t.gdprApplies ? n += "?gdpr=".concat(Number(t.gdprApplies), "&gdpr_consent=").concat(t.consentString) : n += "?gdpr_consent=".concat(t.consentString)), i && (n += "".concat(n ? "&" : "?", "us_privacy=").concat(encodeURIComponent(i))), R = !0, { type: "iframe", url: o + n }; } }, transformBidParams: function transformBidParams(e) { return u.convertTypes({ accountId: "number", siteId: "number", zoneId: "number" }, e); } }; function y(e, r) { var t, i = 0 969, isMobile = window.innerWidth b ? a : b; } /** * Fast loop through watched elements */ function onScroll() { list.forEach(updateVisibility); } /** * updates seen property * @param {Visble} item * @param {{}} evt * @fires Visible#shown * @fires Visible#hidden */ function updateSeen(item, evt) { var px = evt.visiblePx, percent = evt.visiblePercent; // if some pixels are visible and we're greater/equal to threshold if (px && percent >= item.shownThreshold && !item.seen) { item.seen = true; setTimeout(function () { item.trigger("shown", new VisibleEvent("shown", evt)); }, 15); // if no pixels or percent is less than threshold } else if ((!px || percent = 0 && rect.left >= 0 && rect.bottom 1) { result += getLinearSpacialHash(remainder, Math.floor(stepSize / base), optimalK - 1, base); } return result; } /** * @param {ClientRect} rect * @param {number} innerHeight * @returns {number} */ function getVerticallyVisiblePixels(rect, innerHeight) { return min(innerHeight, max(rect.bottom, 0)) - min(max(rect.top, 0), innerHeight); } /** * Get offset of element relative to entire page * * @param {Element} el * @returns {{left: number, top: number}} * @see http://jsperf.com/offset-vs-getboundingclientrect/7 */ function getPageOffset(el) { var offsetLeft = el.offsetLeft, offsetTop = el.offsetTop; while (el = el.offsetParent) { offsetLeft += el.offsetLeft; offsetTop += el.offsetTop; } return { left: offsetLeft, top: offsetTop }; } /** * Create a new Visible class to observe when elements enter and leave the viewport * * Call destroy function to stop listening (this is until we have better support for watching for Node Removal) * @param {Element} el * @param {{shownThreshold: number, hiddenThreshold: number}} [options] * @class * @example this.visible = new $visibility.Visible(el); */ Visible = function Visible(el, options) { options = options || {}; this.el = el; this.seen = false; this.preload = false; this.preloadThreshhold = options && options.preloadThreshhold || 0; this.shownThreshold = options && options.shownThreshold || 0; this.hiddenThreshold = options && min(options.shownThreshold, options.hiddenThreshold) || 0; list.push(this); updateVisibility(this); // set immediately to visible or not }; Visible.prototype = { /** * Stop triggering. */ destroy: function destroy() { // remove from list list.splice(list.indexOf(this), 1); } /** * @name Visible#on * @function * @param {'shown'|'hidden'} e EventName * @param {function} cb Callback */ /** * @name Visible#trigger * @function * @param {'shown'|'hidden'} e * @param {{}} */ }; Eventify.enable(Visible.prototype); VisibleEvent = function VisibleEvent(type, options) { var _this = this; this.type = type; Object.keys(options).forEach(function (key) { _this[key] = options[key]; }); }; // listen for scroll events (throttled) $document.addEventListener("scroll", _throttle(onScroll, 200)); // public this.getPageOffset = getPageOffset; this.getLinearSpacialHash = getLinearSpacialHash; this.getVerticallyVisiblePixels = getVerticallyVisiblePixels; this.getViewportHeight = getViewportHeight; this.getViewportWidth = getViewportWidth; this.isElementNotHidden = isElementNotHidden; this.isElementInViewport = isElementInViewport; this.Visible = Visible;}]);}, {}];require=(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o

Excerpt from:
Trump Is Now Openly Trying to Censor His Critics. He May Succeed. - Slate

Apple Helps China Censor Citizens By Pulling The Plug On A Keyboard App That Encrypted Text Messages – Techdirt

from the don't-be-Big-Brother's-little-brother dept

China keeps being China, despite all the problems it has at home. The coronavirus traces back to Wuhan, China, and it has become clear the Chinese government is doing what it can to suppress reporting on the outbreak.

The country has a fine-tuned censorship machine that works in concert with its overbearing surveillance apparatus to ensure the government maintains control of the narrative. "Ensures" is perhaps too strong a term because, despite its best efforts, information always leaks out around the edges.

Citizens of China have found numerous ways to dodge censorship and surveillance over the years. But they're not being helped much by American companies, which have more often than not complied with government demands for apologies, takedowns, and other efforts that ensure access to the Chinese market at the expense of their Chinese users.

The latest news is more of the same. A clever keyboard app that encrypted messages has been nuked from the Chinese app store by Apple following a takedown demand from the Chinese government.

Apple yesterday removed Boom the Encryption Keyboard, an app that allowed Chinese internet users to bypass censorship, from the China app store, according to its developer.

[...]

According to an email sent by Apple to [app developer] Wang Huiyu, the app was removed because it contained content that is illegal in China. The app is still available in other regions, including Hong Kong, he said.

Boom encrypted messages by changing the originating English or Chinese to a blend of emoji, Japanese, and Korean characters. To decrypt the messages, users simply copied the characters sent to them, which were reverted to their original state on the keyboard below. Not enough to thwart targeted surveillance, but more than enough to dodge blanket censorship efforts like keyword blacklists.

The app's developer suspects Boom was targeted by the Chinese government because it was being used to spread an article about the virus that was censored by the government shortly after its publication.

The article in question is an interview with Ai Fen, a Wuhan doctor who said she was reprimanded for alerting other people about the novel coronavirus. The article, published on March 10 by Chinas Ren Wu magazine, was deleted within hours of its publication. Various versions of the article, including those reproduced in emoji, English, and even Hebrew, emerged after the deletion as people scrambled to save Ais story

This is the sort of information American companies should be helping to spread, not shutting down at the behest of the parties who want to see this information buried. If this were a one-off, it would be worrying. But it's just another data point in a long string of incidents where American tech companies have endangered users in foreign countries, seemingly for the single purpose of maintaining market share.

Filed Under: app store, boom, censorship, china, codes, content moderation, emoji, encryption, keyboardCompanies: apple

Visit link:
Apple Helps China Censor Citizens By Pulling The Plug On A Keyboard App That Encrypted Text Messages - Techdirt

The face of crypto censorship on Wikipedia? – Decrypt

Here we go again. When you're a cryptocurrency that has seen 99% of its value vanish since the crypto bubble of 2017 to early 2018, getting an articleor even a mention in Wikipediacan feel like an insurmountable task. Or it can feel like censorship.

To Charles Hoskinson, it feels like the latter. The founder of Cardano has taken to YouTube to complain about Wikipedia. In a 9:46-minute rant, he accused the community-run free encyclopedia of bias. He claimed that the site is hostile toward cryptospecifically, his crypto projectand threatened legal action.

At issue is a proof of stake Wikipedia page, which Hoskinson claims is badly out-of-date. He said that when certain Cardano community members (he didnt specify who they were) tried to edit the page to include a blurb on Ouroborosthe consensus algorithm that powers CardanoWikipedia volunteers promptly removed the changes.

This is another example of the existential danger to an industry when people rely on things that appear to be open but are actually controlled by a few people who are incredibly biased and who are not accountable to anyone else, he said.

Few people? Who is he referring to? We discovered that one of the offending editors is nocoiner gatekeeper David Gerard. Other crypto projects, notably Decred (which has since slipped five more ladder rungs to 41st cryptocurrency), have complained that Gerard has barred them from Wikipedia.

Yes David Gerard is the one who has been a censor. It has been going on for years since the Ethereum days. I don't know why he hates us so or where his ego comes from, Hoskinson, former CEO of Ethereum, tweeted.

Gerard, though, is not the only editor who has taken issue with the Ouroboros blurb.

In recent days, three other Wikipedia editors also removed the blurbonly to have Cardano members put it back in againwhile a fourth editor removed proposed links to the blurb.

Why? Wikipedia says the content is promotional and therefore verboten.

The text proposed above is hardly neutralit talks about diligent research and innovative features which lend credibility to it's[sic] claim, etc., an editor named Bonade wrote on Tuesday. That kind of wording is not appropriate in an encyclopedia, even if the content should be acceptable.

Hoskinson countered (during his video rant, which he also posted to Twitter) thats not the only instance where editors targeted Cardano. A Cardano Wikipedia page even enjoyed a brief existence before Wikipedia editors rudely snuffed it out in November 2018.

Thats unfair, especially, when historically, weve had a market cap larger than SpaceX, he argued, referring to Elon Musks aerospace project. It is very anti-crypto.

Hoskinson claimed the edits are unsubstantiated and hostile. What does Wikipedia want that the Cardano community isnt proffering up? Tell us the standard and well meet that standard...We are not afraid to have a debate. We are not afraid to represent our technology, and our progress," he said.

In fact, Wikipedia, which has been around since 2001, does have well-documented standards. For starters, to warrant an article on the site, a topic has to be notable. That means the topic needs to have significant coverage in reliable sources that are independent of the subject. Reliable sources include mainstream press and peer-reviewed academic presentations.

The way to get coverage in Wikipedia is to have substantial coverage in a high-quality mainstream sourcenot the crypto press, Gerard told Decrypt, which is crypto press. [ex, Josh Quittner, founding editor: What are we, chopped liver, Gerard?"]

Crypto media does not count as a reliable source because they're really about advocacy: promoting their hodlings, he wrote in an article detailing why Wikipedia editors are harsh on sourcing for crypto articles. Crypto projects are an ongoing firehose of spam, he wrote.

It is quite possible Cardano is adequately sourced; the next stage is an article entirely sourced from good sources, Gerard said.

But from Hoskinsons position, thats simply unjust. Where coins like Spankchain can have an article on Wikipedia. A lot of other cryptocurrencies and top 20s apparently have articles, and thats perfectly fine. But then we are not allowed to have an article for some reason, even though we have been mentioned by the US Congress. Weve been mentioned by the New York Times, the Wall Street Journal, and the Financial Times.

Spankchain does not have a Wikipedia page. We tried to find the reliable sources that Hoskinson listed but we couldnt find anything in mainstream beyond the slightest passing mention.

Meanwhile, citing Hoskinsons posted videoand the potential for a flood of Cardano fans to now rush in and defend the storyGerard has put the proof-of-stake article under extended confirmed protection. That means that from now on, it can be edited only by those who have at least 30 days' tenure on Wikipedia and have done 500 edits. And another editor has initiated an investigation into sockpuppetry, meaning one person in the Cardano community may be making edits to Wikipedia under different aliases, which Wikipedia does not allow.

Continue reading here:
The face of crypto censorship on Wikipedia? - Decrypt

German government prepares for internet censorship and deployment of the armed forces – World Socialist Web Site

By Ulrich Rippert 23 March 2020

The COVID-19 pandemic is highlighting the class character of politics. The health care system has been cut to pieces, hospitals privatised and trimmed for profit, laboratory capacities and nationwide treatment options massively restricted.

Despite warnings from China, no preparations have been made to protect the population. The government cares only about the interests of big business and is making unlimited financial resources available to corporations and banks. Although the danger of the virus was known, and public life has been drastically restricted, many workers are being forced to continue their work without adequate protection.

Resistance is growing against this criminal irresponsibility by the government and employers. Various opposition groups are forming on the internet to refute government propaganda and describe and fight against the dramatic conditions in hospitals, rescue stations, care facilities and factories, but also the devastating effects of government measures on workers in precarious employment.

Politicians have responded to this opposition with calls for censorship and dictatorial measures.

At the beginning of the week, Lower Saxonys state Interior Minister Boris Pistorius (Social Democratic Party, SPD) called for sanctions against the distribution of so-called fake news in connection with the Coronavirus pandemic. He demanded that the government urgently intervene, saying, It must be prohibited to publicly spread false allegations about the supply situation of the population, medical care or cause, ways of infection, diagnosis and therapy of COVID-19.

According to Pistorius, the government must examine whether bans could already be based on the infection protection law. If not, the penal code or the law on administrative offences should be amended as quickly as possible.

The greatest misinformation currently being spread comes from the government itself. It claims that the German health care system is well prepared for the spread of the pandemic, and no one need worry. For weeks, the government played down the dangers.

Now that reality has refuted its propaganda, any criticism of it is to be criminalised and suppressed. If Pistorius has his way, the government will rigorously enforce its monopoly on information and opinion. This is a call for censorship and dictatorship.

Pistorius has long been known as a right-wing social democrat in the tradition of Gustav Noske, who during the November Revolution in 1918 allied with the German army and far-right Freikorps to suppress working-class opposition to the bourgeois order.

For seven years as Lower Saxonys interior minister, he has been advocating a strict right-wing course against refugees and for stepping up the repressive powers of the state. In summer 2017, he presented an SPD position paper on domestic policy, the central point of which was strengthening the federal police force financially and with more personnel. One year later, more than 10,000 people demonstrated in Hanover against the new police law of Lower Saxony, which Pistorius had drafted, because it massively expands the powers of the security authorities while at the same time restricting elementary civil rights.

With his call for censorship and police-state measures, Pistorius speaks for a party that has always responded to crisis situations and resistance from the population by calling for the strong state and dictatorial measures. Pistorius comes from the same political stable as former German Chancellor Gerhard Schrder, who brutally smashed up the welfare systems with the Hartz laws. For the past three years he has also been living in a relationship with Schrders fourth wife, Doris Schrder-Kpf, from whom the former chancellor separated in 2015.

There is no doubt that the fight against the pandemic requires the restriction of social contacts and individual freedom of movement. However, it must not be allowed that the conditions for a dictatorship are created under the slogan necessity knows no law! The coronavirus pandemic, its ominous health, social and economic consequences and the drastic measures required to combat it raise the question of who exercises power and controls the statethe financial oligarchy or the working class?

The ruling class everywhere is trying to use measures against the Corona crisis to strengthen its power. According to information from DPA and Der Spiegel, the president of the Bundestag (federal parliament), Wolfgang Schuble (Christian Democratic Union, CDU), for example, has proposed to the leaders of the parliamentary groups that they expand the Emergency Laws by amending the constitution.

The Emergency Laws, which were passed in May 1968 in the midst of the largest workers strikes and student protests of the post-World War II period, give the state quasi-dictatorial powers in crisis situations (natural disaster, uprising, war). Among other things, they allow for the Bundestag and the Bundesrat (the upper chamber of parliament) to be replaced by an emergency parliament, the Joint Committee. This committee consists of only 48 selected members but has the full powers of both chambers of parliament and would thus largely override the existing parliamentary system. Schuble has now brought up the idea of including a similar regulation in the constitution for the case of an epidemic.

The deployment of the Bundeswehr (armed forces), which Defence Minister Annegret Kramp-Karrenbauer announced at a press conference on Thursday, must also be seen in this context. For the time being, the focus is on logistical tasks. The Bundeswehr has five hospitals of its own, 3,000 doctors, mobile military hospitals as well as logistics and transport capacities that can be used in the fight against the virus.

But Kramp-Karrenbauer has more in mind. In addition to the deployment of up to 50,000 soldiers, there is also talk of mobilizing 75,000 reservists. At the press conference, the defence minister emphasized that the troops will only be properly deployed when the civilian authorities and organizations have reached the end of their capabilities. She claimed that in the area of security and order, assistance from the military would only be available under strict conditions, but in a daily order to the troops she wrote, We will help with health care and, if necessary, with ensuring infrastructure and supplies as well as maintaining security and order.

Chief of Staff Alfons Mais wrote to soldiers saying the Bundeswehr now had the task of maintaining operational readiness for any required support. We are at the beginning of a road whose direction and length we cannot yet estimated, he declared.

In Bavaria, the conservative state government declared a disaster situation last Monday. This enables them to take far-reaching measures against the spread of the coronavirus and to call on citizens to help in the form of services, material and work. However, the disaster situation also means a far-reaching encroachment on democratic rights, which can be used to suppress social and political opposition. The working class must be on its guard.

Google is blocking the World Socialist Web Site from search results.

To fight this blacklisting:

Go here to see the original:
German government prepares for internet censorship and deployment of the armed forces - World Socialist Web Site