🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: de.test
Article #1937

Re: - no reply - ignore

#1937
From: Alfred Peters
Date: Fri, 28 Dec 2012 18:55
111 lines
5448 bytes
Es schrieb einmal Alfred Peters:
> Es schrieb einmal Michael Jaritz:
>> Alfred Peters schrieb:

>>> Du k�nntest h�chstens das Hash-Verfahren direkt aus dem Header der
>>> Unterschrift auslesen. Du m�sstest nur[TM] die ersten Bytes dekodieren.
>>>
>>> [1] -> [2]/[3] -> [4]


>>> [1] <http://tools.ietf.org/html/rfc4880#section-4.2>
>>> [2] <http://tools.ietf.org/html/rfc4880#section-5.2.2>
>>> [3] <http://tools.ietf.org/html/rfc4880#section-5.2.3>
>>> [4] <http://tools.ietf.org/html/rfc4880#section-9.4>
>>
>> H�rt sich interssant an. Wie s�he das in hsc aus ;-?
>
> Viel zu aufwendig. *d&r*

Ach, es geht so. *duck*

<http://zielgra.de/temp/hamster/XPGPSig_GnuPGVerify2.hsc>

Der Aufruf muss hinter:

| ListSetText( $sig_list, $xpgpsig_all )

Der Aufruf sieht z.Bsp. so aus:

| varset( $trueHash, getAlgoFormHash( $sig_list ) )
| Print( "Hashverfahren laut Hash: " + $trueHash )


Und die Sub getAlgoFormHash() zwischen die anderen packen:

| sub getAlgoFormHash( $lPGP )
|    varset $i, 1
|    varset $Signature, $line, ""
|    varset $hash, "<not available>"
|    while( $i < ListCount($lPGP) )
|       $line = ListGet( $lPGP, $i )
|       inc( $i )
|       if ( Re_Match( $line, "^(Version|Comment|MessageID|Hash|Charset):\s" ) )
|          continue()
|       endif
|       RE_Parse( $line, "(\S+)$", $line )
|       $Signature = decodeBase64( $line )
|       if ( $Signature <> "" )
|          break()
|       endif
|    endwhile
|    $i= 1
|    varset $PacketTag, ord( copy( $Signature, $i, 1 ) )
|    if( 0=($PacketTag & 0x80) )
|       warning( "Fehler im Packet Tag" )
|       return $hash
|    endif
|    varset $headerLength, $packetLength, 0
|    if( 0=($PacketTag & 0x40) )
|       #Print( "Old packet format" )
|       $headerLength = ($PacketTag & 0x03)
|       $headerLength = iCase( $headerLength, 0, 2,   1, 3,   2, 5,    else, 1 )
|       $PacketTag = ($PacketTag & 0x3C) >> 2
|    else
|       #Print( "New packet format" )
|       $packetLength = ord( copy( $Signature, $i+1, 1 ) )
|       if $packetLength < 192
|          $headerLength = 2
|       elseif  $packetLength < 224
|          $headerLength = 3
|       elseif  $packetLength < 255
|          $headerLength = 2
|          warning( "Partial Body Length header is't supportet" )
|       else
|          $headerLength = 6
|       endif
|       $PacketTag = ($PacketTag & 0x3F)
|    endif
|    $i = $i + $headerLength
|    
|    if( $PacketTag = 2 )
|       $PacketTag = ord( copy( $Signature, $i, 1 ) )
|    else
|       warning( "Packet Tag Typ is't supportet " )
|       return $hash
|    endif
|    
|    if( $PacketTag = 3 )
|       #Print( "Version 3 Signature Packet Format" )
|       $PacketTag = ord( copy( $Signature, $i+16, 1 ) )
|    elseif( $PacketTag = 4 )
|       #Print( "Version 4 Signature Packet Format" )
|       $PacketTag = ord( copy( $Signature, $i+3, 1 ) )
|    else
|       warning( "Signature Packet Format is't supportet." )
|       return $hash
|    endif
|
|    $hash = iCase( $PacketTag, 1, "MD5", 2, "SHA1", 3, "RIPEMD160", _
|          4, "Reserved", 5, "Reserved", 6, "Reserved", 7, "Reserved", _
|          8, "SHA256", 9, "SHA384", 10, "SHA512", 11, "SHA224", else, "Experimental" )
|    
|    return $hash
| endsub
|# getAlgoFormHash()

Ich ziehe mal um nach: in h.d.tools

Alfred
-- 
                                                                 12991.3
Technical Details
Message-ID: <ak68a8F17dkU1@mid.individual.net>
Path: arc1-ca.pugleaf.net!6ni83509pbd.1!nntp.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!news.mccarragher.com!news.mixmin.net!feeder.erje.net!eu.feeder.erje.net!news-1.dfn.de!news.dfn.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
References: <ajoalhFgu9U1@mid.individual.net> <50D72C77.1080506@mid.tprac.de> <ajovefF58kaU1@mid.individual.net> <221212.184045.dt.158@posting-with.my-fqdn.de> <221212.204007.dt.159@posting-with.my-fqdn.de> <50D71322.9020904@mid.tprac.de> <ajomf5F36j4U1@mid.individual.net> <50D763AE.1020000@mid.tprac.de> <kb9e68.c4.1@oox1xoo.my-fqdn.de> <50DA545F.3010004@mid.tprac.de> <261212.163032.dt.163@posting-with.my-fqdn.de> <50DB33C3.7010303@mid.tprac.de> <ak1ch9FtuufU1@mid.individual.net> <7da9e8742bf78418a96c7809e2b53c89@mj.zielgra.de> <ak3giiFdc7nU1@mid.individual.net>

Show Full Headers
Complete Article Headers
X-Google-Thread: 3b3f7ad913,c0695f369e47bb5a,start
X-Google-Attributes: gid3b3f7ad913,public,usenet
X-Google-NewGroupId: yes
X-Google-Language: GERMAN,ASCII
X-Received: by 10.66.84.136 with SMTP id z8mr7207601pay.2.1357375818638;
        Sat, 05 Jan 2013 00:50:18 -0800 (PST)
From: Alfred Peters <miteinere-mail-adresseindereinleitungszeilewirddieseoftzulang@geekmail.de>
Newsgroups: de.test,hamster.de.tools
Subject: Re: - no reply - ignore
Followup-To: hamster.de.tools
Date: Fri, 28 Dec 2012 19:55:11 +0100
Lines: 111
Message-ID: <ak68a8F17dkU1@mid.individual.net>
References: <ajoalhFgu9U1@mid.individual.net>
 <50D72C77.1080506@mid.tprac.de> <ajovefF58kaU1@mid.individual.net>
 <221212.184045.dt.158@posting-with.my-fqdn.de>
 <221212.204007.dt.159@posting-with.my-fqdn.de>
 <50D71322.9020904@mid.tprac.de> <ajomf5F36j4U1@mid.individual.net>
 <50D763AE.1020000@mid.tprac.de> <kb9e68.c4.1@oox1xoo.my-fqdn.de>
 <50DA545F.3010004@mid.tprac.de>
 <261212.163032.dt.163@posting-with.my-fqdn.de>
 <50DB33C3.7010303@mid.tprac.de> <ak1ch9FtuufU1@mid.individual.net>
 <7da9e8742bf78418a96c7809e2b53c89@mj.zielgra.de>
 <ak3giiFdc7nU1@mid.individual.net>
Reply-To: Alfred.P@GoldMail.de
Mime-Version: 1.0
X-Trace: individual.net xx7TxJopvR2TnZIDp4nrQQzlAr8Q0vuLeN09OMG+1lWtlPddzNQJBmj78C6KKwvYZF
Cancel-Lock: sha1:Ca1KmI8T9JwZbOWcBZm/3jVCX1o=
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:20.0) Gecko/20100101 Thunderbird/20.0a1
X-Face: &*XYh]f^GZW8b&7r[@b?Y;?:EXdM*`Cb}R1wXTsY#L/<.u_,E.7zehn3LjFCn_R/w2%sH.JowH_3R
 t!H>;MHAT5$:6RS9|di[CBisT[$Mh="Utu6U;87Yv![2]Y1n5*',$lYpk?:c|Wnfkc:zv:Ii`FJhO+q3/0'
Path: arc1-ca.pugleaf.net!6ni83509pbd.1!nntp.google.com!border1.nntp.dca.giganews.com!nntp.giganews.com!news.mccarragher.com!news.mixmin.net!feeder.erje.net!eu.feeder.erje.net!news-1.dfn.de!news.dfn.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
Bytes: 5148
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 8bit