Projects and observations

We shouldn’t have to wait for camera encryption

I recently completed a project wherein I built a proof-of-concept encrypting camera that included no changes to the essential hardware or user interface of the device, yet provided strong, on-the-fly encryption of digital photos. I want to discuss more about why I created that project.

I have been aware of the targeting of journalists for decades. This is certainly not new – leaders of all kinds of organizations have known that keeping information out of the public view is how power is amassed and retained. Stories of journalists detained, and even killed, existed in my childhood. The Committee to Protect Journalists counts 1237 journalists killed since 1992.

Throughout this time, the raw information collected by journalists has also been a target. The seizing of cameras and notebooks is not a new phenomenon. The difference today is in the magnitude of information that is captured by journalists and the difficulty in securing it against seizure. Not only that, but the very equipment that journalists have come to rely upon can betray them in ways that notebooks and film cameras never could. We no longer expect journalists to return from the field with a couple of notebooks and a few rolls of film, but rather with hours of video and audio recordings, detailed location information, and thousands of high-resolution photos of their sources. To capture and store this information, journalists rely on a lot of technological equipment.

Yet the industries that provide this equipment are stubbornly behind in providing what should be considered routine and minimal capabilities to protect users, including journalists.

I was fortunate enough to attend MIT Media Lab’s Forbidden Research conference last year during which Andrew “bunnie” Huang and Edward Snowden released their initial research into better tools for monitoring cell phone transmissions. (It is possible for some phones, even in an “off” state, to transmit wireless signals.) One of the inspirations for this work was the tragic story of Marie Colvin.

Marie was a journalist in Syria preparing to report about attacks on civilian targets near the city of Homs. She and photographer Remi Ochlik were killed when radio emissions from their electronic devices, including cell phones, were used to find and target their camp with artillery. This deliberate, state-directed act against a journalist really made clear how the vast amounts of technology that have become mainstays of the journalist have also substantially increased the risk they take.

While I may not be able to do much about rogue wireless transmissions (other than to remind everyone to carry a good faraday bag), I do think I can shed a little light on how direct the path to better encryption on cameras is. As a letter, published by the Freedom of the Press Foundation and signed by 150 documentary filmmakers and photojournalists says, many manufacturers of electronic equipment have begun to implement strong, useful encryption on devices, putting the notes and other content gathered by journalists beyond the reach of those who may want to use it nefariously. However, in the area of high-quality, professional cameras, no on-the-fly encryption is currently available.

This is, simply, not an excusable state. There are no good excuses for Canon, Nikon, Sony, Fuji, Olympus and others not to have added real-time encryption by now. The professional cameras offered by these companies contain very fast processing chips, and while the pursuit of faster frame rates and quicker focus is to be lauded, to not give users the choice to trade some of that performance for basic safety is pernicious.

The driving factor behind why I created my proof of concept encrypting camera is to show that it is possible to retrofit current camera models – even those on the market for years – with strong, easy-to-use encryption without hardware or user interface updates required. I want to show that it is not technical limitations preventing camera vendors from producing these devices but rather an unwillingness to provide the technology that keeps our journalists (and others) in unnecessary danger.

Cameras are seized all the time throughout the world, and with every seizure both the journalist and their sources are endangered. The Committee to Protect Journalists tells Freedom of the Press Foundation:

“Confiscating the cameras of photojournalists is a blatant attempt to silence and intimidate them, yet such attacks are so common that we could not realistically track all these incidents. The unfortunate truth is that photojournalists are regularly targeted and threatened as they seek to document and bear witness, but there is little they can do to protect their equipment and their photos.”

I am tired of waiting for companies to decide adding encryption is a commercially viable feature. I’m tired of companies actively endangering the lives of journalists when this problem that is as old as photojournalism itself can finally be solved. While the best user experience may, indeed require hardware updates, camera vendors can fix this problem now, with a software update alone, so don’t believe any of them that claim there is a major technological hurdle to jump. Don’t believe them when they say you must buy a pricey new model to get these features when they eventually do show up. These cameras can offer encryption today, and vendors should be racing to provide it.

 

Note: Look, cryptography can be complex and getting it right requires time and care, I fully understand this. Additionally, retrofitting a custom processor for new tasks can be problematic and may not result in the best possible performance. However, my research indicates that the custom processors in digital cameras may be well-suited to encryption tasks, even though there will certainly be a substantial performance penalty to pay initially. This is not an excuse for not offering the security and safety of a software update enabling real-time encryption for, at a minimum, still photos to those who are willing to make the trade-off.


Automatic Encrypting Camera Proof-of-Concept

A collage including people icons in the upper right, a camera icon with a compute chip and key icon included, and an old-style photograph with the image replaced by random text representing an encrypted photo.A few months ago, I ran across a post at Boing Boing by Cory Doctorow in which he relayed the desire of journalists to have cameras that would encrypt images on the fly. The uses for this are many and can protect journalists and also, crucially, those the journalist has documented. Siezed images can be used against people by governments and other agencies. It seemed a pretty sound idea to me.
The post imagines the requirement for new user interfaces on cameras to allow the entering of passphrases and the like. While certainly I don’t think that would be a bad idea, the format of dedicated digital cameras does make it a challenge. Small screens are prone to typing errors when using touch-screen keyboards and the small form factor of most dedicated cameras limit hardware input options. However, what immediately struck me was that no changes really need to be made at all, as long as one crucial trade-off is accepted: not being able to review images on-camera.
Since public key cryptography feels well-suited to the task of encrypting images on the fly, I imagined an interfaceless update to existing cameras that would provide strong encryption but without the need to enter a passphrase or any other information. It is, effectively, transparent.

Here is the system I imagined:

  1. Use a well-known (and thoroughtly vetted) public key crypto package on a computer to generate a keypair
  2. Copy the public key to the removable media used by the camera
  3. Insert the media in the camera, which imports the public key included thereon
  4. All images taken by the camera and written to the media will be encypted by the key included on that media
  5. The key is purged from the camera when the media is removed

In this system, the camera never writes an image to storage without first encrypting it. There is nothing for other parties to recover from the media apart from the strongly encrypted images and the public key – which cannot be used to decrypt the images stored. This does bring up the one tradeoff I mentioned previously – there is no way to view any of the images taken on camera. In practice this should not be too difficult to live with as taking lots of shots to be sure a good one is captured has become standard practice, but certainly this could be an unacceptable tradeoff in some situations.

 

Theory is all well and good, but I wanted to see if this system could be realized in the flesh. Since affordable prototyping platforms abound these days, I decided to build a proof of concept encrypting digital camera.

First, I chose a platform – this was a very easy decision. I went with the Raspberry Pi as it is readily available, has substantial online resources available for it, it very cost effective, and supports a native camera device. It ended up being particularly wonderful that Adafruit (an online retailer of electronics) also had a tutorial and software available to turn the Pi into a ready-to-use point-and-shoot camera — that made this a relatively straightforward project.

A clear plastic box containing a circuit board and camera. A power cable is attached to the top and a removable USB drive to the side.

The Raspberry Pi 3 with camera mounted in a case from Adafruit

Step one was getting the hardware. As I live in the Boston area, I’m lucky enough to have a Micro Center local to me which carried everything I needed. (I used the BOM from Adafruit’s camera build.)

  • Raspberry Pi 3 (the faster processor is good for prototyping and encryption, but a Zero might work)
  • Adafruit touch screen
  • Nifty case for the screen+Pi
  • Pi camera w/cable
  • 64GB USB flash drive (I used one with an A and micro-B connector so it could be tested with a Zero in the future – one could also use an SD card reader with card.)
A black plastic case with an opening for a 2.3" touch screen displaying a "gear" and "play" icon. Four hardware buttons are on the right of the case, a USB drive is attached on the left and a power cable is attached on the top.

The back of the Adafruit case with their touch screen installed displaying the camera UI developed for the linked tutorial.

From there, I simply followed Adafruit’s tutorial until I had a working digital camera. If you’d like to build one of these for yourself, follow Adafruit’s build and then come back for the rest.

Please note that this is intentionally not a detailed tutorial. This is a proof-of-concept project and it is not audited or secured in any way. If you need the protection of an encrypting camera, you’ll need to understand it deeper than following a recipe allows. However, below is a discussion of the steps I followed to implement the camera along with snippets of my custom code. With work and understanding, you’ll be able to re-create my project.

Once I had the camera working, I needed to identify how I would have the system perform the encryption. I chose GPG (Gnu Privacy Guard) because it is well-vetted, available for every platform, includes a Python library (conveniently, the camera software is Python) and already familiar to many. I installed GPG on my laptop and on the Pi and performed a few excercies to familiarize myself with the tool, such as generating, exporting, and importing keys, and encrypting/decrypting files between systems. Once I was comfortable, it was time to automate things on the Pi.

I installed the usbmount library on the pi and created a mount script for my USB device in /etc/usbmount/mount.d. Usbmount allows the system to automatically run a script when a specific USB device or class of device is inserted or removed. An included script ensures that the flash drive is always mounted at /etc/usb0 so I can make sure to put images in the right place. My custom script then automatically imports a GPG key from the “key.asc” file found on the drive into a known GPG homedir. That way the camera script has the key available in a known location later. In addition, I created an unmount script that removes the key from the system once the drive is removed.

Mount Script
#!/bin/sh
mkdir /tmp/gnupg
export GNUPGHOME=/tmp/gnupg
gpg --import /media/usb0/key.asc
gpg --list-keys --with-colons 2>/dev/null| awk -F: /^pub/{print\$5} > /tmp/gnupg/keyid
exit 0
Unmount Script
#!/bin/sh
rm /tmp/gnupg/*
exit 0

After a few rounds of testing, I was ultimately happy that this solution was reasonably robust. To get the key onto the camera, one only has to export it from GPG into “key.asc” and place it in the root of the media. Every drive/card could have a different key if needed, and all could be prepared ahead of time. (In fact, the system containing the private key need not even be in the same country as the camera or even available to the camera user!)

Next, I needed to modify the camera script that was installed as part of the Adafruit tutorial. This turned out to be pretty straightforward. (Though there was a bit of trial-and-error getting the python gnupg package to properly encrypt.) Ultimately, I simply needed to intercept the saving of the image to camera, run the in-memory image through the encryption package instead, and redirect the output to the configured USB drive. Just a few lines of code (mostly to import and configure python-gpg) were needed. Note that I did not take the time to disable alternate saving methods like Dropbox, and I did not test what happens should one try to use them with my script modifications.

#At the top of the file with the other imports:
import gnupg

#I modified the array (~line 260) used to direct where images are stored this way:
pathData = [
 '/media/usb0/DCIM', # Path for storeMode = 0 (Removable Media)
 '/boot/DCIM/CANON999', # Path for storeMode = 1 (Boot partition)
 '/home/pi/Photos'] # Path for storeMode = 2 (Dropbox)
]

#In the takePicture() routine (about line 450) I added these GPG-related lines to
# read the key ID that the usbmount script helpfully stored for us:
gpg = gnupg.GPG(gnupghome = '/tmp/gnupg')
 infile = open('/tmp/gnupg/keyid', 'r')
 gpgTempKey = infile.read()
 gpgKeyID2 = gpgTempKey.rstrip('\n')

#A little further down in takePicture() I intercepted the camera capture
# and writing commands and replaced with this:
camera.capture(camera_image, 'jpeg')
#I found gpg.encrypt didn't play well with the BytesIO() object
temp_image = camera_image.getvalue() 
#encrypts and automatically writes the output to filename
encrypted_image = gpg.encrypt(temp_image,gpgKeyID2,always_trust=True, output=filename) 

A photo inside a building including part of a table-top in the foreground with a wood door and glass door in the background a few feet away.

This haphazard photo of the inside of the Democracy Center in Cambridge, MA was the first encrypted photo to be taken with my camera.

Finally, I had a working Encrypting Digital Camera! Whenever I insert media in the camera that contains a valid GPG key in a file called “key.asc” the camera then begins to encrypt every image taken until the media is removed. On my computer, I can then use the private key (protected by a passphrase) to decrypt the images on the command line and I’m left with pristine* jpgs! (*Well, 8MP noisy JPGs but that’s a function of the mediocre Pi camera, not the encryption!) It’s not exactly fast, though. It took approximately 6-10 seconds to encrypt and write the JPG to disk. Of course, this is a low-powered processor and a single-threaded encryption engine. It is, however, a very successful proof that this system can work.

I have shown that with minimal software changes, cameras can support robust encryption with no changes to user interface at all. I would hope that we see commercial camera producers consider integrating a system like this in the near future. Additionally, I have to wonder if third-party firmware updates (like CHKDSK for Canon cameras) could add such support. At worst, with some effort, platforms like the Raspberry Pi could offer a decent starting point. Of course speed may be an issue until dedicated encryption hardware is added to cameras. I am unclear as to how well-suited the DSP custom processors found in digital cameras could be adapted for encryption tasks (possibly very well!) but in the near future, retrofit software would probably preclude the super-fast capture rates that professional photographers have come to expect.

Now, for the BIG HUGE DISCLAIMER: This is a PROOF OF CONCEPT. While I’m providing some code snippits here so that others can recreate my work, it’s super important that everyone understand that this project has not be audited or vetted by security professionals, nor was it created with the intention of being used in the field. It’s possible that this project could give some level of protection as-is, but it’s also possible that there are glaring errors that would erase any gains or even exacerbate the situation you may be trying to avoid. Please don’t use this in production! (As a note, I have made no attempt to harden the Pi against access, for instance via wifi, ethernet, or USB. It could be trivial to circumvent the entire encryption system via these vectors.)


Why is it so Wrong to be Wrong?

The text "Evolution of Beliefs" behind the universal symbol for "Prohibited"

We aren’t allowed to evolve our beliefs.

As I continue to think about how we may be able to really change minds over the long term, I have been regularly struck by just how horrible our society sees being wrong. Apart from a tiny (and privileged) community in the startup world espousing “fail early and often,” being wrong is seen as anathema today. It seems impossible for anyone to change their minds without being ridiculed and embarrassed. And I don’t think this is only for the Big Things nor is it reserved for well-known people.

Until we can de-stigmatize changing one’s mind, we are likely to make very little progress towards ways to actually do so.

 


ISP Customer Data a Well-Stocked Pond for Police Fishing Expeditions

A small spotted yellow fish being held by two hands in front of a ruler with stones and moss in the background. The fish measures about 9 inches long.
As most of us know by now, Republicans in congress recently made it legal for internet service providers (ISPs) to distribute and sell information about us, their customers – including detailed internet usage data – without our permission. Much has been written about the potential dystopian marketing uses of this data, but I have seen little addressing something that could be even more chilling: the use of this data by law enforcement. 

There is a recent but deep history of companies providing new data-driven tools to law enforcement. It can be hard to argue with these services on the surface, but repeatedly we have seen abuses which have led some companies to curtail the use of their services by the police. Companies have harvested the public timeline of Twitter, for instance, to provide tools for tracking lawful protestors. Facebook data is available through third parties that allow a level of deep search impossible on the platform itself. And while these services and the use of this data by law enforcement does occasionally result in a feel-good story on the news, the broadening of the use of these tools is concerning. 

Thinking specifically about ISP customer data, we know that there will be data of interest to law enforcement. It is, after all, not uncommon for subpoenas and warrants to be issued for this data in certain types of cases. The idea that detailed demographic data coupled with explicit internet usage history could soon be available on every internet subscriber in the country, packaged into a neat, searchable database, must have some members of the authorities salivating. No longer will a case need to be made first, possibly to be backed up with a handful of potentially dubious web searches. Instead, algorithms can easily digest the data as a whole and spit out a list of people who “fit the pattern” of past offenders – maybe this is a list of users visiting known child pornography sites, or maybe it’s a list of us who regularly use encrypted communications, read hardware hacking tutorials, and search for “download Avengers movie” to see which service offers it cheapest. 

We have already seen how problematic algorithmic analysis of data sets can be. They are biased, opaque, and lack nuance in their conclusions. Set loose on such a rich data set, it’s not hard to imagine the long list of potential “criminals” that can be manufactured from completely innocent, legal uses of a service they pay for. No warrant will be needed for this data. No oversight required for its use. The data brokers need not even be publicly revealed if their terms of service are properly written. And as laws regarding what is and is not legal or suspicious change, some of this data could damn us well into the future. 

Congress has not just handed the marketers of the country with a gift, they have stocked the pond for some very rich fishing expeditions by law enforcement groups throughout the US.


Political Jewelry

A small round lapel pin made of antiqued brass displaying a Falsum character (upside-down T) surrounding by the text

Liberty and Justice for All Falsum Pin by William Aaron Waychoff

One of the first thoughts I had for a cohesive line of jewelry was political. Not so much on it’s face – on the surface, it was cute even – but it was commenting on something in society very pointedly.* The most recent jewelry I have developed is political not just in its soul, but on its surface as well. See my Resist post for more on those specifics. I have had many other pieces come to mind that incorporate strong social-commentary.

It seems that I may have a specific interest developing.

I have been thinking about some of the ways that political jewelry works and how it plays in society at both the individual and interpersonal levels. While I approached this a bit dubious of the potential for strong impacts (mainly because I was so interested I was sure there was nothing to find) I now believe that there are very real benefits to what jewelry with a political message can do. Below, I’ll speak briefly about some of these. I’m still exploring this line of thought, and will likely be doing so for years to come, so I’m sure there will be future pieces that focus on refinements and deeper thoughts on all of this.

Primarily Personal Benefits:

Expression and Defiance

Right now, every day before I leave my house, I put on one of my Resist lapel pins, buttons, or necklaces. No matter which I choose to wear on a given day, the act of donning that little sliver of speech makes me feel a jolt of energy, of optimism, of strength. I literally feel a little more like I can face each day and do what is required of me when I put on a falsum. Part of it is because I’m declaring to the world that I have feelings on these matters our country is facing. Part is because standing up to authority, even in such a small way, still feels novel or taboo to me and the thrill of doing so is exhilarating. And certainly part of it is reaffirming, every day, that there are actions I can take that will make this world better. There is some piece of fear buried in there as well, because even such a small thing can definitely make one a target.

It may all be anecdotal at this point, but I’m over the idea that my feelings are unique to myself. They may be far from universal, but I’m not a special snowflake.

Supporting a Cause

By buying a piece of jewelry that advocates for a cause, a purchaser explicitly and implicitly supports that cause. This can be the primary reason for many kinds of purchases. When a product becomes, intentionally or otherwise, associated with a cause, it can be the cause that people are supporting with their cash more than even the desire to own the product. With something like jewelry and other durable goods, the remembrance of that initial support is rekindled every time the purchaser experiences that object. I don’t think this feeling of self-affirmation should be underemphasized. While it would be simplistic to call this selfish behavior, it is important to understand that there is a significant personal gain associated with the purchase and wearing of political jewelry. With jewelry in particular, this personal reward seems important.

Finding a Voice and Acceptance

Certainly every artist I know wants to create in a way that resonates, attracts, and speaks to at least some others. While this can, and often is, a purely aesthetic attraction, it is not limited to that. Political jewelry has the opportunity to appeal to wearers both on an aesthetic and activist level. Many items that classify as non-essential likely fall into this category. (Branded apparel, art objects, stickers, etc.) The idea that something resonates with a large crowd brings value to both the creator and the consumer. In cases, it can be the driving force behind the artist’s energy. Without the possibility of such a payoff, some artists surely would pursue different directions in life. But without art that resonates with them, many consumers would not pursue the world of artistic or designed products at all.

Primarily Interpersonal Benefits:

Discovery

To use the language of online advertisers, wearing political jewelry can help surface content relevant to viewer’s interests. When someone sees another wearing an intriguing piece of jewelry that is either enigmatic or obviously aligned with particular views, the likelihood of a personal interaction between the viewer and the wearer likely increases. This can lead to viewers being introduced to new causes, new voices, and new perspectives. The wearer can similarly be exposed. In the most excellent circumstances, the two can both find new connections and friends.
Certainly I have had this experience multiple times of late due to my daily wear of the falsum jewelry.

Commerce

Like it or not, we currently live in a capitalistic society. My personal beliefs on capitalism are complex, but we have a very deeply entrenched set of rules for how things are to be rewarded in our society. Part of that includes the exchange of money for just about everything. I think it’s easy to criticize creators for “capitalizing” on hard or tragic events, and surely it happens in inappropriate ways all the time. But apart from independant wealth, a creator has got to eat and, ideally, money for that food comes from selling the creator’s works. It always seems harder when there is a cause involved, especially one as big as the direction of the worlds most powerful country in the years and decades to come. But profiting off one’s creative work is an integral part of how our society currently works. I work really hard to be fair-to-generous when selling my political work, as do many others. People do tacky things sometimes, though.

Solidarity & Conformity 

I’ve thought about this deeply and I think it’s best summarized simply. People are more likely to act when they know that they are not alone in their thoughts and feelings. Symbols, as potentially expressed in political jewelry, broadcast the wearer’s beliefs on certain subjects. The idea that others around you share similar thoughts and feelings can be very powerful. It gives us permission to believe the things we believe. It gives us strength to act. This, I think, is possibly the most important part of political jewelry. Wearing it and sharing it gives us strength. Strength makes it possible to act. Only action leads to change.
Additionally, when someone who is out of the loop sees the appearance of a new symbol or motif, whether they know what it means or not, it can put pressure on them to find out what it means and there is a certain social pressure toward believing the same concepts that is exerted.

These aspects and the way they interact are the most interesting concepts of the bunch to me and the one I’ve thought most about. Expect more on this soon.
Surely there are other ways that political jewelry plays with our psyches and societies, but I think this list is enough to convince me to embrace it further. I think that there is a lot of jewelry, a lot of messages, and a lot of study packed into this concept.

* I’m being cagey here only because, after years, I’m in active development on this and talking about current projects in specifics somehow lets the magic out for me. I’ll try to remember to link this post to the project announcement when it eventually comes.


Community Supported Propaganda

I’ve been thinking about things that we as small groups and individuals can do to temper and eventually turn the frightening political front that the US (and, indeed, others) are seeing at this moment. We know that media plays an outsized role, even compared to the recent past, in the general thoughts and feelings of much of the country and the world. Media companies are corporations, first and foremost (some exceptions exist) and are interested primarily in a continued, profitable existence. With the extreme changes in the media landscape over the last two decades, this is not a certainty for most media corporations and, therefore, they have become much more risk-averse than in the past. This can translate into business strategies much more focused on attracting and maintaining audiences than in reporting fair and accurate news. You can’t be the only outlet not reporting on the scandal of the day lest you loose eyeballs and, therefore, revenue.

However, media – primarily video content – is not about to lose its influence in our daily lives. What I think that we as concerned individuals must do is device new ways to have media work for us, and to spread the messages we feel are important rather than leaving that choice up to profit-motivated newsrooms.

You have likely heard of a “CSA” before – usually meaning “Community Supported Agriculture” but expanded to include “Aquaculture,” and, particularly relevant to this concept, “Art.” In my community, I can participate in a Community Supported Art group which allows about 150-200 people each quarter to pay into a pool which is then distributed among a juried group of local artists, each of whom must create an art object for each of the supporters. I think we can look to this model for inspiration in getting small, targeted bits of media in front of the people who most need to hear our messages.

This is, on the surface, a simple concept:

  • Social media ads are pretty cheap (or at least have a low barrier to entry)
  • Targeting tools on those platforms are creepily specific
  • We have so many creative people who want to do something to help
  • We can crowdfund the running of ad spots targeting those who most need to hear our messages

I envision a group who evaluates submissions from the community on a variety of criteria and then manages the running of the submissions in appropriate targeted groups on sites like Facebook, Instagram, Twitter, Snapchat, and more. Supporters pay into the pool on a regular basis (similar to Patreon) and receive updates about which ads were run and potentially engagement reports from interactions with those ads. I would hope that such situations were able to provide some compensation and/or production assistance to those creating the media content as necessary and possible.

In short, we as regular individuals could come together to put small-creator-made ads in front of hundreds of thousands of people who need to hear from anyone outside their echo chamber. We would, in effect, open up those chambers and inject our own little bit of reverb into the echoes.

There are some potential pitfalls. Any tool can be used for good and evil, and there is great potential for harmful mis-use of this concept. In fact, I would be surprised if this isn’t already happening. It’s easy to imagine, for instance, a group running ads targeting LGBT+ youth with messages encouraging self-harm, or one offering assistance to undocumented immigrants which actually handed over their information to authorities. But, while tempting, it doesn’t help to try to keep tactics secret. When used openly, everyone can better understand how they work and can use them, and devise antidotes to them, more effectively.

For my case, I would want to see ads that humanize those who are under the heaviest persecution at the moment and make it difficult for far-right conservatives to other them. I would support messages of unity and warmth, but also a lot of messages of facts –  the kinds of facts that make strong conservatives question the stories we are getting from our current administration. (Honest, creative presentation of those facts are key to encourage the necessary engagement.)

I would not personally support groups running aggressive messaging that is more likely to cause a backlash effect than a critical evaluation of beliefs. But that is a choice, not a requirement for such a thing. It makes me wonder whether contributors should have a say in which ads are run and whether voting on a juried selection may be feasible.

The media is a weapon at this point, and I see no way to stuff it back in the bottle, so let’s at least make things as even as we can.

 


« Previous Entries Next Entries »

Powered by WordPress | Designed by Elegant Themes

Pin It on Pinterest

Share This