Page MenuHome GnuPG

No OneTemporary

diff --git a/.gitignore b/.gitignore
index b05caed..bca1deb 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,13 +1,14 @@
oldsite/
stage/
scratch/
/web/sitemap.org
.*.orgx
/web/theindex.inc
/web/faq/gnupg-faq.pdf
/web/faq/gnupg-faq.tex
/web/faq/gnupg-faq.txt
/web/swdb.lst
/web/swdb.lst.sig
/misc/blog.gnupg.org/index.html
/misc/blog.gnupg.org/20*.html
+/misc/blog.gnupg.org/headlines.txt
diff --git a/misc/blog.gnupg.org/20150310-gnupg-in-february.org b/misc/blog.gnupg.org/20150310-gnupg-in-february.org
new file mode 100644
index 0000000..ea089cd
--- /dev/null
+++ b/misc/blog.gnupg.org/20150310-gnupg-in-february.org
@@ -0,0 +1,115 @@
+# GnuPG News for January 2015
+#+STARTUP: showall
+#+AUTHOR: Werner
+#+DATE: March 10th, 2015
+
+** GnuPG News for February 2015
+
+Indeed, very exiting news this month: The financial crisis of The
+GnuPG Project is over. Due to an unexpected amount of donations
+received in the first days of February we can keep on working for at
+least the next 2 or 3 years.
+
+How did this happen? At the [[https://events.ccc.de/congress/2014/wiki/Main_Page][31C3]] Nico Josattis arranged an Interview
+with [[http://juliaangwin.com][Julia Angwin]] who writes for [[http://www.propublica.org][ProPublica]]. Eventually on the 5th
+her [[http://www.propublica.org/article/the-worlds-email-encryption-software-relies-on-one-guy-who-is-going-broke][article]] was published and immediately received a lot of attention.
+Not only at the ProPublica site but at many other news site as well.
+While checking my mail on that evening, I noticed more than thousand
+notification mails for donations and even better: that continuous stream of
+donations did not stop for the next days. Alone on the first day we
+received more than 120,000\thinsp\euro and thus more than our initial goal.
+I even had to fix the script building the donation progress bar to not
+overflow the right margin the same night. I also received a call from
+one of the Stripe founders who offered yearly donations from Stripe
+and Facebook each at 50,0000\thinsp$. Amazing.
+
+I like to *thank everyone* for supporting the project, be it small or
+large individual donations, helping users, providing corporate
+sponsorship, working on the software, and for all the encouraging
+words by mail, blogs, and even postcards.
+
+Due to that new publicity for GnuPG, I received many requests for
+interviews and for several days journalists and photographers visited
+me in my office. They wrote several articles for German papers and
+radio stations, for example in the [[http://www.taz.de/Verschluesselung-mit-GnuPG/!154635/][taz]], the [[http://www.sueddeutsche.de/digital/verschluesselungssoftware-gnu-pg-wie-ein-mann-das-e-mail-geheimnis-verteidigt-1.2355155][Süddeutsche Zeitung]], and
+the [[http://dw.de/p/1Eebj][Deutsche Welle]]. I hope these articles help to keep up the
+awareness for the importance of privacy issues.
+
+GnuPG does not stand alone: there are many other projects, often
+unknown to most people, which are essential to keep the free Internet
+running. Many of them are run by volunteers who spend a lot of unpaid
+time on them. They need our support as well!
+
+Now what to do with all that money? Before a final plan can be
+drafted, tax issues need to be resolved. Given that g10^code (the
+legal entity behind the project) is not a charity, we need to find a
+way to stretch the use of the money beyond this year. My tax
+advisor is currently looking into this and I will report on the
+outcome in another blog entry.
+
+Regardless of this I started to look out for a second developer and
+fortunately [[http://walfield.org][Neal Walfield]] was searching for a job and accepted my
+offer to work on GnuPG. Neal is well known for his work on modern
+operating systems and I consider him an excellent hacker. I am glad
+to have him on board.
+
+*** Release status
+
+GnuPG [[https://lists.gnupg.org/pipermail/gnupg-announce/2015q1/000361.html][2.1.2]] was released on the 11th, [[http://lists.gnupg.org/pipermail/gnupg-announce/2015q1/000362.html][2.0.27]] on the 18th, and [[http://lists.gnupg.org/pipermail/gnupg-announce/2015q1/000363.html][1.4.19]]
+on the 27th.
+
+The 1.4.19 release features a fix for a new side channel attack on the
+Elgamal encryption (which used to be the default public key encryption
+algorithm until 2009). Go ahead and read how Genkin’s group describes
+the [[http://www.cs.tau.ac.il/~tromer/radioexp/][details]] of this attack. The release also includes a mitigation
+for another SCA to be described in the forthcoming paper /Last-Level
+Cache Side-Channel Attacks are Practical/ by Yarom et al.
+
+Libgcrypt [[http://lists.gnupg.org/pipermail/gnupg-announce/2015q1/000364.html][1.6.3]] was released on the 27th to fix the described SCAs for
+GnuPG 2.0 and 2.1.
+
+*** Released and not yet released changes
+
+Several segfaults due to NULL-derefs and invalid memory reads when
+using garbled keyrings were fixed. These unlikely exploitable bugs
+were detected by fuzzing instrumented versions of GnuPG; [[https://blog.fuzzing-project.org/5-Multiple-issues-in-GnuPG-found-through-keyring-fuzzing-TFPA-0012015.html][Hanno Böck's
+report]] has some details. A long standing implementation flaw
+copying memory stored values to integers variables was also found and
+fixed. These bug fixes have been backported to 2.0 and 1.4;
+Daniel Kahn Gillmor was kind enough to help with this.
+
+The decade old PKA system was modernized. The formerly used TXT
+records haven been replaced with CERT records of the IPGP type, and
+the local part of the mail address is now hashed and base32 encoded to
+support all valid mail addresses. This has been backported to 1.4.19.
+The new option =--print-pka-records= for 2.1 can be used to create
+zone files for PKA.
+
+The removal of the PGP-2 support from 2.1 turned out to be more
+complicated than expected. Another bug related to this only showed up
+and was fixed after the release of 2.1.2.
+
+To help people not fluent in the spelling alphabet or when using
+small fonts the option =--with-icao-spelling= has been added to 2.1:
+#+begin_example
+pub dsa2048/F2AD85AC1E42B367 2007-12-31 [expires: 2018-12-31]
+ Key fingerprint = 8061 5870 F5BA D690 3336 86D0 F2AD 85AC 1E42 B367
+ "Eight Zero Six One Five Eight Seven Zero
+ Foxtrot Five Bravo Alfa Delta Six Niner Zero
+ Three Three Three Six Eight Six Delta Zero
+ Foxtrot Two Alfa Delta Eight Five Alfa Charlie
+ One Echo Four Two Bravo Three Six Seven"
+#+end_example
+
+The dropped support for LDAP keyserver will be re-introduced with
+2.1.3. Neal started to work on this and published a detailed description
+on how to setup such an [[https://wiki.gnupg.org/LDAPKeyserver][LDAP server]].
+
+
+** About this news posting
+
+I try to write a news posting every month. However, other work may
+have a higher priority (e.g. security fixes) and thus I won’t promise
+any fix publication date. If you have an interesting topic for a news
+posting, please feel free to mail me or gnupg-users@. A summary of
+the mailing list discussion would be a nice to have.
diff --git a/misc/blog.gnupg.org/upload b/misc/blog.gnupg.org/upload
index 912a885..bffe8d1 100755
--- a/misc/blog.gnupg.org/upload
+++ b/misc/blog.gnupg.org/upload
@@ -1,91 +1,100 @@
#!/bin/sh
set -e
+opt_upload=yes
+if [ x"$1" = x"--no-upload" ]; then
+ opt_upload=no
+fi
+
+
if [ "$(pwd | awk -F/ '{print $NF}')" != "blog.gnupg.org" ]; then
echo "upload: not invoked from the blog.gnupg.org directory" >&2;
exit 1
fi
echo "upload: Rendering entries" >&2
# We need to initialize that org cache to use our own publish function
# despite that we do not use any org-publish feature
emacs23 --batch \
--eval "(require 'assoc)" \
--eval "(require 'org)" \
--eval "(setq gpgweb-root-dir \"$(cd ../../web && pwd)/\")" \
--eval "(require 'gpgweb (concat gpgweb-root-dir \"share/gpgweb.el\"))" \
--eval "(setq org-publish-use-timestamps-flag nil)" \
--eval "(setq org-export-html-toplevel-hlevel 1)" \
--eval "(setq org-export-html-coding-system 'utf-8)" \
--eval "(gpgweb-setup-project)" \
--eval "(org-publish-initialize-cache \"gpgweb\")" \
--eval "(gpgweb-publish-blogs)"
if [ ! -f index.html ]; then
echo "upload: index.html has not yet been build" >&2;
exit 1
fi
# Find all rendered HTML files but skip possible translated versions.
find . -maxdepth 1 -type f -name "20*.html" -print \
| grep -v '\.[a-z][a-z].html$' | sort -r >index.tmp
newest=$(head -1 index.tmp)
# Extract the head lines
: >index.headlines.tmp
cat index.tmp | while read fname; do
echo -n "${fname#./}|" >>index.headlines.tmp
- sed -n '/^<h2 id=/ s,^<[^>]*>\(.*\)</h2>,\1,p' $fname >>index.headlines.tmp
+ sed -n '/^<h2 id=/ {s,^<[^>]*>\(.*\)</h2>,\1,p;q}' \
+ $fname >>index.headlines.tmp
done
# Update the index file
echo "upload: Updating index.html" >&2
awk -F: <index.html >index.tmp \
-v newest=${newest#./} '
/<!--BEGIN-NEWEST-ENTRY-->/ {indon=1; print; insertnewest() }
/<!--END-NEWEST-ENTRY-->/ {indon=0}
/<!--BEGIN-BLOG-INDEX-->/ {indon=1; print; insertindex() }
/<!--END-BLOG-INDEX-->/ {indon=0}
!indon { print }
function insertnewest () {
inblog = 0
while (getline < newest) {
if (match ($0, /^<main>/)) { inblog = 1; continue; }
if (match ($0, /^<\/main>/)) { inblog = 0; break; }
if (! inblog) { continue }
if (match ($0, /^<div id="content">/)) { continue; }
if (match ($0, /^<\/div><!-- end content -->/)) { continue; }
print $0
}
close(newest)
}
function insertindex (tag) {
file = "index.headlines.tmp";
print "<ul>"
while (getline < file) {
split($0, a, "|")
printf " <li><a href=\"%s\">%s</a>\n", a[1], a[2];
}
print "</ul>"
close (file)
}
'
mv index.tmp index.html || echo "upload: error updating index.html" >&2
# Update the feed file
echo "upload: Updating feed file" >&2
-# Remove temp file
-rm index.headlines.tmp
+# Rename headlines file
+mv index.headlines.tmp headlines.txt
-echo "upload: Uploading files" >&2
-rsync -vr --links --exclude '*~' --exclude upload --exclude '*tmp' \
- --exclude '*.org' \
- . werner@trithemius.gnupg.org:/var/www/www/www.gnupg.org/misc/blog/
+if [ $opt_upload = yes ]; then
+ echo "upload: Uploading files" >&2
+ rsync -vr --links --exclude '*~' --exclude upload --exclude '*tmp' \
+ --exclude '*.org' \
+ . werner@trithemius.gnupg.org:/var/www/www/www.gnupg.org/misc/blog/
+fi
#eof

File Metadata

Mime Type
text/x-diff
Expires
Sat, May 10, 8:27 AM (1 d, 7 h)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
46/dd/54098be7a704b72795427771b127

Event Timeline