diff --git a/rfb/vncAuth.h b/rfb/vncAuth.h
new file mode 100644
index 0000000..18d87ad
--- /dev/null
+++ b/rfb/vncAuth.h
@@ -0,0 +1,31 @@
+/* Copyright (C) 2002-2003 RealVNC Ltd.  All Rights Reserved.
+ *    
+ * This is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ * 
+ * This software is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ * 
+ * You should have received a copy of the GNU General Public License
+ * along with this software; if not, write to the Free Software
+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307,
+ * USA.
+ */
+#ifndef __RFB_VNCAUTH_H__
+#define __RFB_VNCAUTH_H__
+
+#include <rdr/types.h>
+
+namespace rfb {
+
+  const int vncAuthChallengeSize = 16;
+
+  void vncAuthEncryptChallenge(rdr::U8* challenge, const char* passwd);
+  void vncAuthObfuscatePasswd(char* passwd);
+  void vncAuthUnobfuscatePasswd(char* passwd);
+}
+#endif
