Fingerprinting Digital Documents

In this era of electronic leakers, remember that zero-width spaces and homoglyph substitution can fingerprint individual instances of files.

Posted on January 11, 2018 at 12:50 PM • 45 Comments

Comments

&nobusspaceJanuary 11, 2018 1:44 PM

They're often not even visible in contexts where software experts would expect them to be, like on a programming terminal.

I let it go when this popped up in the squid but well ... really?

CelosJanuary 11, 2018 2:01 PM

Indeed. Or historically other things like tiny defects in specific letters by using specially prepared typewriters for each copy. Hence anybody that is halfway competent has always copied leaked documents by manually retyping everything. It seems this basic skills have been lost in many cases, see for example the "Reality Winner" fiasco. Of course, it is still possible to watermark by equivalent wording, but that is much harder and much more obvious if you have access to more than one copy.

hmmJanuary 11, 2018 2:58 PM

This is why I avoid documents like the plague. Give me a good ol' oral transliteration any day.

Bob PaddockJanuary 11, 2018 3:19 PM

Making a cellphone 'fingerprint' form a single camera image:

ABC:Enabling Smart phone Authentication with Built-in Camera

Abstract—In this paper, we propose ABC, a real-time smartphone Authentication protocol utilizing the photo-response nonuniformity (PRNU) of the Built-in Camera. In contrast to previous works that require tens of images to build reliable PRNU features for conventional cameras, we are the first to observe that one image alone can uniquely identify a smartphone due to the unique PRNU of a smartphone image sensor. This new discovery makes the use of PRNU practical for smartphone authentication. While most existing hardware fingerprints are vulnerable against forgery attacks, ABC defeats forgery attacks by verifying a smartphone’s PRNU identity through a challenge response protocol using a visible light communication channel. A user captures two time-variant QR codes and sends the two images to a server, which verifies the identity by fingerprint and image content matching. The time-variant QR codes can also defeat replay attacks. Our experiments with 16,000 images over 40 smartphones show that ABC can efficiently authenticate user devices with an error rate less than 0.5%.

Impossibly StupidJanuary 11, 2018 5:24 PM

@Celos

but that is much harder and much more obvious if you have access to more than one copy.

All uniquing info becomes more obvious when you have multiple copies you can easily compare. The trick at that point becomes embedding enough extra bits to identify any attempt to falsify/remove the fingerprint (i.e., only a "partial print" should be able to be recovered from any T available files out the N total). I'm not sure there is mathematically any good way to reference the original and still ensure you've stripped out all the secrets identifiers. Maybe some very fuzzy processing, like translating it to a foreign language and then back, using custom substitution dictionaries and word spinners, etc.

Dr. I. Needtob AtheJanuary 11, 2018 7:56 PM

I first read that fastforwardlabs.com article with Firefox and saw several cases of words run together, scattered throughout the text. Then I looked at the same article with Chrome and the previously missing spaces were back where they belonged. So whatever trick they were trying to pull worked with Chrome but not with Firefox.

meJanuary 12, 2018 2:09 AM

isn't easier and more effective to replace some words with other that has similar meaning?
for example:
"we have to go at mountain."
"we have to climb the mountain."
"we need to go at mountain;"

if three different persons read this it will make sense for everyone but they are different.
and this will resist rewriting or print+ocr+to lower case all

Clive RobinsonJanuary 12, 2018 2:29 AM

@ Impossibly Stupid, Celos,

I'm not sure there is mathematically any good way to reference the original and still ensure you've stripped out all the secrets identifiers.

If you consider a document consits of information layers, from the bit level upwards then you would have to look at each layer seperatly and in combination. It helps however to think of each layer as an extended Shannon Channel[1] when analysing things. Importantly Shannon's work tells us what the limits are in any layer for a covert channel. However when considering multiple layers you have to move to the MIMO models.

If you folks are old enough to have been through the Digital Watermarking[2] (DWM) War back in the late 1990's into the early 2000's, that worked in layeres each getting added by defenders as attackers found ways around them. However the problem the defenders ran into was that in a file format the channel parameters are in effect frozen, whilst the information content could be varied without it being perceptable to humans. Thus DWN failed to work against certain attacks.

In putting caneries in documents the defenders have the ability not just to use the spare channel capacity for a covert channel they can also modify the information input.

One such change would be the use of a thesaurus for word substitution another is the writing style. Such as "that is" "that that" and "that which" can be used in an interchangable way. And it is in this stylistic level where the defender gains an extra advantage.

If a whistle blower takes a document and deleates or removes the non printing canary layers, then when putting the original and copy documents side by side gives to a human reader an identical document, that the originator of the document would have no deniability on. However as they work through with a thesaurus or change the style, they change the visable doccument thus giving the originator not just deniability but an alert of a whistleblower when a journalist trys to get verification.

It is susspected that some lawyers have used such deniability already with corporate clients.

Thus journalistic integrity has two sides that of protecting the source and that of verifying authenticity. It's a situation that favours the originator not the whistleblower.

Thus the whistleblower needs to in effect frame a colleague to protect themselves. It's something the originators like the NSA and a well known film company have exploited ruthlessly.

It was a point that was not lost on Edward Snowden, which he first "used colleagues" then realised what that ment so "outed" himself. However even so we have good reason to believe that those colleagues he did use did not go free from sanctions by the vengeful senior hierarchy.

Which is in line with "Uncle Sam Policy" of "throwing under the bus" any nation, corporation, company citizen or other person innocent or otherwise "as an example" to others. Unless of course they have certain traits, then they become almost untouchable for any crime from over due parking fines to genocide. Which is why the US has that bit of legislation about sending in the troops to rescue any such US person from a valid Human Rights abuse trial...

The problem with this mentality is "blowback" or "what goes around comes around" 9/11 showed that the idea of Exceptionalism by Issolationism protection nolonger works. The NSA apparently has not just recruitment but staff moral issues... The list no doubt goes on and will get worse.

Oh and Whistleblowers will wise up to who they give their documents to. Many foreign journalists acutely aware of espionage issues with the US will not attempt to verify in the same way as would US journalists, thus will asses veracity via different methods prior to publishing, thus the story will break without the originator being fore warned.

Which is why the Intercept and the journalist who sent a copy of the source document back to the US originator still stuns me.

Yes I know the Intercept have to be cautious about US entities running false flag / discredit opperations against them, but there are other ways to get verification.

[1] Claude Shannon came up with a model for a communications channel to work out efective information rates in the presence of noise. In essence you have three components to consider, the channel capcity normally given as Bandwidth the level of the desired signal at the receiver input and likwise the noise. Importantly in a practical system there is usually a large margin between the theoretical limit of a channel and that used to convey information. This excess capacity can be used to provide Forward Error Detection and Correction or as a covert channel. Shannon expanded the basic channel ideas and others have done likewise to account for new issues such as various types of jamming that can be analyzed as multiple parallel channels with bleed or cross channel symbol interferance.

[2] In essence DWN exploited redundancy in an image and added faux noise to it. It used similar techniques as Low Probability of Intercept (LPI) radio Direct Sequence Spread Spectrum systems.


[3] You can read about some methods of attacking DSSS LPI systems in this 2005 thesis https://etd.lib.metu.edu.tr/upload/2/12606906/index.pdf obviously things have moved on in a decade which is why MIMO systems are replacing DSSS, FHSS and hybrid systems for certain covert communications techniques.

WinterJanuary 12, 2018 3:42 AM

My work flow would be:
Print > OCR > spell-check&correct > Automatic translation to new language > Correct > Translate back > Correct

I would use suitable caution when applying the translators to prevent "them" tracing me over the translators.

hmmJanuary 12, 2018 4:15 AM

This is the digital equivalence of kidnappers using cut up newspaper letterheads.

Just have Siri read it out loud and Alexa A2T interpret it, then run it back and forth through google translate a few rounds between Russian, Gaelic, Klingon and Esperanto... Anyone who can get anything signal out of the noise is your spy and/or Scottish.

Documents are evil, never trust them. Vessels of ill import.

echoJanuary 12, 2018 8:02 AM

The essays indicate a workflow of write original copy, veryify via multiple sources, and retain a copy for evidence in a fair trial held in the public interest?

After receiving a document it could contain watermarks and acanaries and active components so you would filter on an isolated machine? DRM and prevention of printing may be an issue. Ultimately this heads in the direction of obtaining plain text. Methods include an electronic copy of the data stream or OCR. Is it possible for OCR to be compromised?

I'm not completely convinced about multiple rounds of language translation. This would either not make sense or be reversible?

What about software designed to identify plagiarised works?

Reading about the Malthusian trap before Christmas was interesting. The Treaty of Paris (1783) is an eye opener too.

Clive RobinsonJanuary 12, 2018 9:58 AM

@ hmm,

Anyone who can get anything signal out of the noise is your spy and/or Scottish.

Do yer ken why that is nowt fair, or do yer need yer taties blued?

There will be those that take exception to your allegations of speaking some foreign language amongst those north of the boarder. Just remember Wee D'nald McTrumpie claims Scottish heritage, though they defiantly would not call him a son of Scottland...

For all their flame and bluster they are sensitive souls at heart, and as the old joke goes "I know and my wife gives me permission to say so! Ouch" ;-)

GlyphJanuary 12, 2018 12:44 PM

Perhaps web browsers (or browser plugins) can be made to filter such content? Just add a toggle to enforce user-defined character set prior to loading and display. How does TOR Project deal with this tactic?

Impossibly StupidJanuary 12, 2018 12:51 PM

@Clive Robinson

If you consider a document consits of information layers, from the bit level upwards then you would have to look at each layer seperatly and in combination.

And that assumes you know what all the "layers" are, which should not be seen as a given. If you compare just two versions of a document, all you can do is determine how they differ, if they differ. Alter or strip away that info and what you have left could still refer to some version of an "original" document that has been marked (albeit to to a lesser precision than either of the two copies you're comparing). That could still be enough to start an investigation that quickly closes in on your mole.

9/11 showed that the idea of Exceptionalism by Issolationism protection nolonger works.

What? There's little about US policies that have been isolationist since it became a super power. It has constantly meddled in the affairs of other nations. Some would argue that attacks like 9/11 are a direct consequence of US imperialism/colonialism. Nobody would have any good reason to scream "Death to America" if the US were just quietly keeping to itself.

But that is getting way off topic, and risks hmmm going off on another conspiratorial rant. Please link to a blog of your own that discusses such issues if you want the conversation to continue along those lines.

Bob PaddockJanuary 12, 2018 1:08 PM

How do we know that each page of paper itself was not tagged with a nano sized identifying material when it was manufactured?

hmmJanuary 12, 2018 7:21 PM

@ Clive

"though they defiantly would not call him a son of Scottland..."

Pure dead right he's not a TRUE Scotsman - The wee hen that never layed away, starched bolloks!
Clatty crabbit Donnie's all bum n' parsley. Awae an bile th' roaster, heid’s full o’ mince.

Sh!teholes, sheesh in a sheep thae's nae Presidential - Not anywhaer! Bile it awae, th' numpty. Cheers.

Tony H.January 14, 2018 1:24 AM

@me

isn't easier and more effective to replace some words with other that has similar meaning?
for example:
"we have to go at mountain."
"we have to climb the mountain."
"we need to go at mountain;"
if three different persons read this it will make sense for everyone but they are different.
and this will resist rewriting or print+ocr+to lower case all

You are in a maze of twisty little passages, all different.
You are in a twisty maze of little passages, all different.
You are in a little twisty maze of passages, all different.
You are in a twisty little maze of passages, all different.
You are in a maze of little twisty passages, all different.
You are in a little maze of twisty passages, all different.
You are in a maze of twisting little passages, all different.
You are in a twisting maze of little passages, all different.
You are in a maze of little twisting passages, all different.
You are in a little maze of twisting passages, all different.
You are in a twisting little maze of passages, all different.

You are in a maze of twisty little passages, all alike.

WaelJanuary 18, 2018 1:35 AM

@Clive Robinson,

Moving comment to this thread as it's directly related to this topic. It's also related to the Unicode URL Hack thread.

I suspect @ianf is long gone...

For sure. I just had to make good on my word.

Unless that "Magnas Opus" ianf promised is taking more time than "he" first thought... In which case I'm probably not going to read it either way.

How could you! You started this topic recently! Don't make me believe that you have a nasty habit of starting a topic and not participate in it. You've done it before and you paid a price. Remember: there is a price to be paid if you raise my blood pressure ;)

It's really not meant for @ianf. It's for everyone. If I had more money I would up the prize. Moving the comment here is a subtle hint. The second hint is free as well, so I'll decipher the first part of the poem for free (prize is still $100 and not $95:)

Steganography ain't lame, Notepad is the trend; Cryptography's the game, But vi's your friend!

Meaning: Steganography is the first word mentioned in the "poem" so it must be a major component of the puzzle, and it is. The masterpiece poetry also says regular common text editors like Notepad and such won't help in this puzzle. The second part also mentions Cryptography. So the hidden message is protected with Steganography and Cryptography. The hidden message is a limerick. There... No more free hints.

If no one takes a stab at it then I'll post the "Kick-ass Guide For Secret Communications" with a step by step procedure to composing these sort of hidden messages. Could be useful in the future for "Secret Communications" here.

WaelJanuary 18, 2018 10:40 AM

There are two usual suspects that eat up this kind of thing. Let's see if a little taunting encourages them.

If no one takes a stab at it then...

@Ratio, @Anura...

What's up, too challenging for you? I'll give you one more free hint if you like! You could be a little richer and buy a new bigger popcorn machine to complete the entertainment experience while you follow all the incoming fascinating comments and news / fake news :)

Don't disappoint me now...

WaelJanuary 18, 2018 7:59 PM

@Ratio,

Are you an impostor? Let’s see how you beehive first, so I can authenticate you. ;-)

I'm not a خلية نحل, ok? Now that you bit, I'll give you another hint:
curl https://www.schneier.com/blog/archives/2016/06/friday_squid_bl_530.html#c6768390 > comment.txt

See what the file looks like where my comment is. There! I de-steganographiezed it for you. Find the key and the encoding and you're good to go. Next hint will be $5 -- and that could be very costly. There once was a guy who spent his fortune on a pizza. A $5 hint could be worth a million dollars five years from now :)

Did I beehive appropriately?

WaelJanuary 18, 2018 8:26 PM

@Ratio,

Next hint will be $5 ...

I take that back. No more hints, it's almost trivial now because I deciphered the second line of the poem. If you copy and paste the whole comment into a no frills text editor, you won't see the special characters (as designed, of course.) If you paste it into vi you'll see them. Alternatively, you could use the curl command as described above and view the hidden message in a regular text editor. This was the more explicit meaning of

Cryptography's the game, But vi's your friend!

Your task, should you accept it is to decipher the next line:

Don't run out of steam; Remember, and you'll be done; The key's the rhyme scheme, Replace B with zero and A with one

Tick-Tock...

Signed: The real Wael (yea, that'll work)

PS: If the solution is not accompanied with a wallet address the prize will be forfeited -- you have been cautioned.

RatioJanuary 18, 2018 8:49 PM

@Wael,

I'm not a خلية نحل, ok?

Of course not. That would be @جوستينا. :-)

Did I beehive appropriately?

لا-)

The ‌b‌roblem is I can’t curl, vi, etc. at the moment, but I think I’ve got another way…

Signed: The real Wael (yea, that'll work)

وائل الصحيح :-O That actually worked. ;-)

WaelJanuary 18, 2018 9:27 PM

@Ratio,

The ‌b‌roblem is

I'll remember that!

but I think I’ve got another way…

There are several ways. You may view bage source if you can from where you are...

RatioJanuary 18, 2018 10:06 PM

@Wael,

I'll remember that!

*LOL*    Now I really know it’s you. :-)

You may view bage source if you can from where you are...

B‍‍‌‌‍‌‌‌‍‌ossibly. (Actually, no.) Can you?

How to process this puppy? Lessee…

WaelJanuary 18, 2018 11:47 PM

@Ratio,

B‍‍‌‌‍‌‌‌‍‌ossibly. (Actually, no.) Can you?

Actually, yes. It's in a long line. Yes I can. Verified before I said it.

Clive RobinsonJanuary 19, 2018 1:49 AM

@ Wael, Ratio,

See what the file looks like where my comment is.

Back in times past prior to "I An Not French" leaving here for places unknown we had a little spat about hiding in plain sight using pairs of HTML tags.

Thus as I said at the time you could use say the "i" italics flag with the "ul" list tag in four diferent ways thus giving you the equivalent of two bits of hidden data. The only problem was finding and using a web server that did not mung whitespace etc.

So without looking my first thought if it was not a symantic or "shared knowledge" piece of stego it would be by use of HTML tags as that's easy for a "hand edit" in notepad etc without needing to remember unicode character listings etc. Also your hint suggests that a look at a simple listing would work, thus HTML flags would be visable.

Any way it's Friday morning on a cold day in London Town where even the "flying rat" pigeons are looking hung down and brung down. I fully expect one of them to curl a wing tip and cough cough into it like some aged smoker puffing their day away.

WaelJanuary 19, 2018 4:32 AM

@Clive Robinson, @ Ratio,

we had a little spat about hiding in plain sight using pairs of HTML tags.

Yup. I remember that although I'm too tired to find the link.

So without looking my first thought if it was not a symantic or "shared knowledge"

Neither.

Any way it's Friday morning on a cold day in London Town where even the "flying rat" pigeons are looking hung down and brung down.

Eat a couple of them, but substitute green wheat for rice, which is a more authentic dish. Dry green wheat is called "Freek", although some other regions call it "freekeh". So I could actually say: eat a freakin' stuffed pigeon :) They are delicious. I use the second recipe for Cornish hens and quail since I don't want to get caught catching rats-with-wings in the city ;)

Speaking of food, the other day I made the best falafel from scratch. This is the real falafel (green inside, not yellow) - a recipe probably as old as the pigeon recipe :)

JG4January 19, 2018 7:09 AM


Did anyone catch that one of my comments earlier in the week showed a block of text from nakedcapitalism that drove a spell-checker nuts? It would be awesome if one of the titans would run that piece through vi and let me know what is going on.

I think that flying rats in cities are polluted with industrial chemicals, so I caution against eating them. In fact, cities and the interior of buildings are contaminated with industrial chemicals.

don't have the link handy, but I recall reading where they collapsed a major roof with many tons of chicken bones from the nearby dump. here's enough evidence that could happen.

http://www.colonialpest.com/seagulls-garbage-dumps-and-rooftops/

https://www.manchestereveningnews.co.uk/news/greater-manchester-news/mcdonalds-loving-seagulls-cause-manchester-12048657

a few gems in the usual compendium

https://www.nakedcapitalism.com/2018/01/links-11918.html

...

Anyone who claims that machine learning will save money in high-stakes government decision-making is lying Boing Boing (DL). Must-read.

Crime-Predicting Algorithms May Not Fare Much Better Than Untrained Humans Wired

...

New Cold War

Fear and Droning: Manufacturing Consent for War as a Public-Private Partnership Nina Illingworth

...

CIA rendition flights from rustic North Carolina called to account by citizens Guardian (Re Silc). Well worth a read. “I baked their gingerbread houses for Christmas.”

...

RatioJanuary 19, 2018 8:06 AM

@Wael,

Your A-B mapping looks wrong. I divided the input in segments of the obvious size. The number of distinct segments hints at a next move, but there’s no straightforward way to get where it looks like I need to go first. If I flip all the inputs, everything seems to fall into place. (After that all I’ve got so far is gibberish.) Does this look OK to you?

37 43 7a 56 …

RatioJanuary 19, 2018 10:49 AM

@Wael,

I have ‍ and ‌ as A and B, because the code starts with “ZWJ ZWJ ZWNJ ZWNJ”. You said to “replace B with zero and A with one”, but I use A → 0 and B → 1. (That’s how I ended up with the first four bytes I gave above.)

This is before I get to gibberish:

7CzVhqvZZnkzXwlO3FF9bd7bv9dS3ydl+DmJHhZoO8Vfmgp6kd23qISfDAehc9F79ONwCKDAYjHFnZ5odq0JC2M1i8o4XUyGC3fv2dsbYzadP6zlL+aPQvAv6GC5h5YfE7BuGjOahID1OFZKDAyOkAps1O/8xj61/mfQXnWEXIZ9frvytVWD+PPSJfFgdVSPUV9GKgtvQuj+zbnspsKLufLtsuAymxHRN1dxDTB8hww=

Base-64 decoding is the obvious next move, but doing that seems to yield gibberish. That’s as far as I got on a tiny screen. (I’ll see if I can whip up some code to do the decoding later.)

WaelJanuary 19, 2018 11:15 AM

@Ratio,

Gibberish looks fine! You basically had two choices regarding mappings of {ZWJ, ZWNJ} to {0,1}, that's why the poem did not cover this mapping since the search space is so small. You got unlucky and tried the wrong mapping first but flipped it around and got the correct mapping -- all as expected.

Now regarding the A-B mapping: Read the poem carefully. Does the poem say:

Don't run out of steam; Remember, and you'll be done; The input's the rhyme scheme, Replace B with zero and A with one

Or does it say:

Don't run out of steam; Remember, and you'll be done; The key's the rhyme scheme, Replace B with zero and A with one

The hidden message is now visible, it's still encrypted. You need to find the key and the algorithm then decrypt it. Very good.. You're almost there :)

PS: You are now the only candidate eligible for the prize. Not going to let someone piggyback on your work and eat your freakin' lunch.

WaelJanuary 19, 2018 11:59 AM

@Ratio,

(I’ll see if I can whip up some code to do the decoding later.)

Don't make it too hard on yourself; the poem tells you exactly what you need to do ;)

RatioJanuary 19, 2018 12:03 PM

@Wael,

Now regarding the A-B mapping: Read the poem carefully.

I’d taken “key” to mean “crux”, and sorta stopped reading. *LOL* Next time…

You need to find the key and the algorithm then decrypt it.

Re-reading the poem, it all makes sense and I think I’ve got all the pieces. Playtime’s over, though. ;-)

Clive RobinsonJanuary 19, 2018 10:07 PM

@ Wael,

Sorry for the late response, I'm a little on the down side myself, I've got a dry cough from the bottom of the lungs and it's knocked me sodwards[1], but I'm still topsides :-)

So back to more important things,

Eat a couple of them, but substitute green wheat for rice, which is a more authentic dish.

What you call "squab" we would call "wood pigeon" or just "woodies" that I shoot in my garden from time to time. Not the "rock dove" vermin we have infesting our towns and cities, that I would not feed to the neighbors cat even though we have a mutual hate for each other :@

The stuffing is similar to one made with rice, dates, preserved lemon[2] and cinnamon, that allegedly comes from Morocco. A friends mother makes it when I giver her a brace of woodies from the garden. She also adds just a very little harisa in to lift it up. It's "a dish of spring" that has the power to make your mind leap above the grey and the damp to those pleasant roof tops and courtyards in old "Moorish" towns around the Mediterainian. I asked her once why rice in the stuffing and not cracked bulgar wheat, and she said in effect that the taste of cracked wheat is to earthy and detracted from the lightness of the dish so you could not taste the hint of rose water.

But I shall have to track down the Freek and try it out in a salad first to see what it's qualities are like.

[1] No not a spelling mistake for once ;-) genuine old English word "sod" being the top layer of soil you might call "turf". Thus equivalent of it knocked me "to the ground" which this wracking cough does. It starts with a cough that goes "full body", thence to a bark, to rattle with twitchy jerking feet then gasping wheeze, to just gasping gulp like a fish out of water. It makes smokers hack sound like a polite little request for attention in comparison and it makes doctors look quite alarmed to see me flailing on the exam bed just after they tell me to take a deep breath to listen for fluid in the lungs...

[2] Not the normal lemons you can brine youtself at home, no these are those little hard lemons not much bigger than golf balls and nearly as hard that would be inedible if you did not preserve them for a month or so first. However they reward you with a real lemony perfume almost like standing next to a tree in full bloom.

Clive RobinsonJanuary 19, 2018 10:43 PM

@ JG4,

I recall reading where they collapsed a major roof with many tons of chicken bones from the nearby dump

Yeah Seagulls are actually taking over from pigeons, more flying dogs than rats. Like Canadian Geese they are not something that you would eat out of choice. I've actually had a full on fight with a seagull that was attacking a child and frightening her mother. They are not just vicious they are bold as well and this one had drawn blood. However once I had a firm grip on it's wind pipe it quietend down sufficient to get it away from the high street and spectators. Personally I'd have quite happily wrung it's neck but people get all squeamish about that sort of thing, saying it was not doing any harm when it had just nearly bitten a childs finger off...

In the UK we used to have weekly refuse collections but the Government decided that once every two weeks was OK, which it is not... Since then the levels of ordinary vermin such as flies, mice and rats has shot up, but also second tier vermin such as foxes, seagulls, squirrels and feral pets coming into direct contact with humans even in their homes. Often it's young children getting attacked you hear about because the over populating vermin see them as a fresh food source... It's also encoraged an increase in "fly tipping" and other anti-social behaviour such as setting bins on fire...

WaelJanuary 19, 2018 10:53 PM

I've got a dry cough from the bottom of the lungs and it's knocked me sodwards

Get better soon. I'm still not a 100%, either.

What you call "squab" we would call "wood pigeon" or just "woodies"

Hmmmm. I wish you hadn't gone there! You're asking for a yellow card!

Par for the course! One Pigeon is supposed to be equivalent to 120mg of the blue stuff -- you know, Vitamin V, and it doesn't give you a headache either (not that I would know - I just heard.) Not surprised it's called by that in the UK, according to Wikipedia...

Colloquially and in slang, erection is known by many informal terms. Commonly encountered English terms include '******', '*****', '*****' and 'woody'.

So... Plan for a rowdy night.

The stuffing is similar to one made with rice, dates, preserved lemon[2] and cinnamon

I only like cinnamon in deserts. Had enough rose water that I am sick of it.

But I shall have to track down the Freek and try it out in a salad first to see what it's qualities are like.

Good stuff, they call it "super food" these days. It does have a taste that can overwhelm mild-tasting foods.

genuine old English word "sod" being the top layer of soil you might call "turf"

My neighbor, Charlie, is ninety-some years old and goes for a daily walk with his nurse. Whenever I see him and ask him "how are you doing Charlie," his response is always "still above the sod" :)

bed just after they tell me to take a deep breath to listen for fluid in the lungs.

Have you been baptized (waterboarded) recently?

WaelJanuary 20, 2018 10:45 AM

@Ratio,

Playtime’s over, though. ;-)

It ain't over till you post the cleartext message.

Don't run out of steam; Remember, and you'll be done; The key's the rhyme scheme, Replace B with zero and A with one

...

Know that I keep my word; I have class. On Schneier's Blog of Cryptology... My limerick immortalized your *ss With an inscription of your Eulogy

Rhyme Scheme... Limerick.... ? (Psssst: Google Fu might help here.)

Leave a comment

Allowed HTML: <a href="URL"> • <em> <cite> <i> • <strong> <b> • <sub> <sup> • <ul> <ol> <li> • <blockquote> <pre>

Photo of Bruce Schneier by Per Ervland.

Schneier on Security is a personal website. Opinions expressed are not necessarily those of IBM Resilient.