diff --git a/src/main/java/org/apache/openejb/tools/release/cmd/Dist.java b/src/main/java/org/apache/openejb/tools/release/cmd/Dist.java
index 5e095c3..61e95f5 100644
--- a/src/main/java/org/apache/openejb/tools/release/cmd/Dist.java
+++ b/src/main/java/org/apache/openejb/tools/release/cmd/Dist.java
@@ -337,13 +337,13 @@
         }
 
         default void createSha256() {
-            final String sha256 = hash("SHA-256");
+            final String sha256 = hash("SHA-256") + getTabbedFilename();
             write(sha256, sha256());
         }
 
         default void createSha512() {
-            final String sha256 = hash("SHA-512");
-            write(sha256, sha512());
+            final String sha512 = hash("SHA-512") + getTabbedFilename();
+            write(sha512, sha512());
         }
 
         default File asc() {
@@ -362,6 +362,14 @@
             return get(get(), "sha512");
         }
 
+        default String getTabbedFilename() {
+            return "\t" + getFileName();
+        }
+
+        default String getFileName() {
+            return get().getName();
+        }
+
         static void write(String content, File file) {
             try {
                 IO.copy(IO.read(content), file);
