---
title: "Signera ett e-post med gpg via php"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/113550-signera-ett-e-post-med-gpg-via-php"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "@ndreas"
published: "2004-10-14T11:58:36.000Z"
updated: "2004-10-15T15:36:05.000Z"
replies: 2
views: 275
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/113550-signera-ett-e-post-med-gpg-via-php"
---

# Signera ett e-post med gpg via php

## #1 — @ndreas, 2004-10-14T11:58Z

Hej,

Jag har hittat följande script för att encryptera ett mejl.
Det jag istället vill är att signera mejlet, inget annat.
Någon som kan komma med ett tips om hur man ändrar kommandoraden till gpg.
Det ska bara signeras, ingenting annat.
Tack för hjälpen redan nu!

\<? 
$username = "andreas"; 

$pgp="/usr/bin/gpg"; 

$user="Andreas \<adde.k@home.se\>"; 

$recp="Namn \<anvandare@doman.com\>"; 

$data="Text som ska skickas"; 

$command = 'echo "'.$data.'" \| '.$pgp.' -a --always-trust --batch --no-secmem-warning -e -u "'.$user.'" -r "'.$recp.'"'; 

$oldhome = getEnv("HOME"); 

putenv("HOME=/home/$username"); 
$result = exec($command, $encrypted, $errorcode); 
putenv("HOME=$oldhome"); 

$message = implode("\\n", $encrypted); 
if(ereg("-----BEGIN PGP MESSAGE-----.\*-----END PGP MESSAGE-----",$message)) 
{ 
        echo "Det fungerade"; 
}else 
{ 
        echo "Det fungerade inte"; 
} 
$subject="Test message"; 
$header="From: $user"; 

echo "Message\<br\>"; 
echo nl2br($message); 

mail($recp,$subject,$message,$header); 
?\>

Permalänk: https://www.webforum.nu/p/113550

## #2 — @ndreas, 2004-10-14T16:53Z

Hej,

Kom på hur jag skulle göra, men kan bara göra det i ssh, kan man göra det via php, det är följande kommando, men får det inte att fungera, kan det vara t.ex. att php kör som nobody eller något liknande?
Nån som har nån idé, kan det vara en brandvägg som är i vägen eller nått?

Kommando:
exec("echo password \| gpg -a --passphrase-fd 0 --clearsign test.txt");

Hjälp mig nu, det finns väl nån duktig?

Tack!

Permalänk: https://www.webforum.nu/p/1459615

## #3 — lunne82, 2004-10-15T15:36Z

Du behöver nog ange --homedir då du kör via PHP så den vet vem som signerar.

> \--homedir directory
>                  Set the name of the  home  directory  to  directory  If  this
>                  option  is  not  used  it defaults to "\~/.gnupg". It does not
>                  make sense to use this in a options file. This also overrides
>                  the environment variable $GNUPGHOME.

Permalänk: https://www.webforum.nu/p/1460011

---

Tråden på webben: https://www.webforum.nu/amne/php/113550-signera-ett-e-post-med-gpg-via-php
