diff --git a/model/sync-digest.cc b/model/sync-digest.cc
index f6ad110..a6f91f7 100644
--- a/model/sync-digest.cc
+++ b/model/sync-digest.cc
@@ -26,7 +26,16 @@
 #include <boost/assert.hpp>
 #include <boost/exception/errinfo_at_line.hpp>
 
+// for printing, may be disabled in optimized build
+#include <boost/archive/iterators/base64_from_binary.hpp>
+#include <boost/archive/iterators/base64_from_binary.hpp>
+#include <boost/archive/iterators/transform_width.hpp>
+
 using namespace boost;
+using namespace std;
+
+using namespace boost::archive::iterators;
+typedef base64_from_binary<transform_width<string::const_iterator, 6, 8> > base64_t;
 
 namespace Sync {
 
@@ -128,5 +137,27 @@
 }
 
 
+std::ostream&
+Digest::print (std::ostream &os) const
+{
+  BOOST_ASSERT (m_hashLength != 0);
+  
+  ostreambuf_iterator<char> out_it (os); // ostream iterator
+  // need to encode to base64
+  copy (base64_t (reinterpret_cast<const char*> (m_buffer)),
+        base64_t (reinterpret_cast<const char*> (m_buffer+m_hashLength)),
+        out_it);
+
+  return os;
+}
+
+std::ostream &
+operator << (std::ostream &os, const Digest &digest)
+{
+  digest.print (os);
+  return os;
+}
+
+
 } // Sync
 
diff --git a/model/sync-digest.h b/model/sync-digest.h
index adf4d96..7c7174c 100644
--- a/model/sync-digest.h
+++ b/model/sync-digest.h
@@ -96,6 +96,9 @@
   // template<class INT>
   // inline Digest &
   // operator << (INT value);
+
+  std::ostream&
+  print (std::ostream &os) const;
   
 private:
   /**
@@ -141,6 +144,9 @@
   return *this;
 }
 
+std::ostream &
+operator << (std::ostream &os, const Digest &digest);
+
 // template<class INT>
 // Digest &
 // Digest::operator << (INT value)
