URGENT: inconsistencies between Message Digests

Hi
I'm developing a system wherein the contents of a JMS message are fed into a MessageDigest, and signed by a Signature with the sending node's Private Key. The signed bytes from the Signature are then set as a message property.
The node that receives the message then creates a MessageDigest from the message body text, and using another Signature, performs verification of the new MessageDigest with the signed bytes obtained from the JMS message property that was set.
The problem is that, despite explicitly using the UTF-8 encryption when converting from byte[] to String in my code, the MessageDigest of the message body is always different (and differs upon each program run, even when the message body contents are the same for repeated runs). I've checked and the text being used to create the message digest on each node is exactly the same (including when checking the bytes), yet as I have said, the digests are always different. However, I am running one node on Windows XP, and another node on Solaris, but I can't see how this might affect things if I've explicitly used UTF-8 encoding, and have the same Provider (SUN version 1.2) in use on both platforms.
Are any aspects of Message Digests time-dependent/platform-dependent/randomly-generated?
Should I not even be using Message Digests/Signatures and instead use Ciphers?
Can anyone help me out here? I would be extremely grateful for any assistance!
Thanks,
Simon Parkin

Thanks for the help.
I removed the MessageDigest code ... and I'm still having problems (in a different area now).
I hate having to do this, but here is the code listing for the functions I've created (minus the Exception catching code):
public String signedDigest(String messageText)
     PrivateKey key = (PrivateKey)KEYSTORE.getKey(LOCAL_ALIAS, LOCAL_PASSWORD.toCharArray());
     Signature kSig = Signature.getInstance(SIGNATURE_ALGORITHM);
     kSig.initSign(key);
     kSig.update(messageText.trim().getBytes("UTF-8"));     
     byte[] signedBytes = kSig.sign();
     return new String(signedBytes, "UTF-8").trim();
public boolean verifyContent(String messageText, String signedDigest, String receiverID)
     Certificate kCert = KEYSTORE.getCertificate(receiverID);     
     PublicKey kPub = kCert.getPublicKey();
     Signature kVer = Signature.getInstance(SIGNATURE_ALGORITHM);
     kVer.initVerify(kPub);
     kVer.update(messageText.trim().getBytes("UTF-8"));          
     boolean result = kVer.verify(signedDigest.trim().getBytes("UTF-8"));
     return result;
'signedDigest' creates the signed content in the sending node, and 'verifyContent' checks it at the receiver end. Now I've checked the content of the 'signedBytes' produced in 'signedDigest', and compared it to 'signedDigest.getBytes("UTF-8)' in 'verifyContent', and they are exactly the same, yet the verification never returns true. I'm using the right keys, and the 'messageText' used at both ends is the same, so I still can't understand why this isn't working.
Any further help would be very much appreciated.
Simon Parkin

Similar Messages

  • Failed to verify AS2 message Reason message-digest attribute value

    Hi All,
    I have scenario from AS2---->PI--
    >ECC(AS2 to Proxy) .I tested in QA system successfully but messages not reached to PI system.Communcation channel montering error message is Failed to verify AS2 message. Reason: message-digest attribute value does not match calculated value (Software version: 1.0.2). This scenario working fine producation server using with receiver file adapter.After transported from QA to PROD error got occured.Please provide your inputs on this issue
    Regards,
    Ramesh

    Thank you,
    I've followed all the steps in the link for the section : For a new wallet, please follow.
    SSL is not used, the B2B sends to a proxy server which uses SSL to the Trading Partner.
    This is a future production system; the same setup and configuration has been successfully used in development and test.
    The configuration all looks the same between environments, but dev and test work while this fails.
    The previous configuration did not have the TP's public cert in the wallet, so I added it according to the link.
    However the same error occurs.
    Is there any chance this behaviour is related to this : metalink docid : 803466.1 / Oracle B2B certificate for ebMS will expire July 17 2009
    This is AS2, not using ebXML, but I do see references to the phaos security tool kit in the logs.
    Currently all environments use MLR#7.
    Edited by: tdba2 on Aug 1, 2009 11:58 PM

  • Message Digest with symmetric key

    Hi,
    I am new to Java Cryptography.
    My requirement is i want to digest a message using RSA generated 128 bit key and i am not able to find any functions to generate Symmetric key and also to digest a message with key. Can any one please tell me how to do. Any help would be appreciated. This is very urgent requirement.
    Thanks in advance.
    Cheers,
    Sreedhar Gupta

    RSA use a key pair :
    you can sign with the private key
    and you verify signature with public key.
    for this use class : java.security.Signature
    To have a "message digest" with a symmetric key
    use the class : javax.crypto.MAC

  • How to switch between messages in the BlackBerry Hub

    With the release of BlackBerry 10 version 10.1, we’ve added a new gesture to the BlackBerry Hub that allows you to quickly switch between your next and previous messages. It’s simple: while viewing a message drag your finger from the left to the right and in one continuous motion swipe up or down.
    For example, in the following screenshot you’ll notice I am viewing ‘Test 08”. To get to the next message, “Test 09”, all I need to do is swipe from left to right (red arrow) followed by swiping up (green arrow) in a single motion. To switch to the previous message, “Test 07”, I complete the same gesture, but swipe down instead (blue arrow).
    Tip: Using a BlackBerry Q10 or Q5? On top of using this gesture to switch between messages, you also have the option of pressing the N key to view your next message, or the P key to view a previous message.
    If this gesture doesn’t appear to be working on your device, verify you are using BlackBerry 10.1.0.4181 or later by going to Settings > About and reviewing the OS Version field. If the OS Version is lower than 10.1.0.4181, check for updates by going to Settings > Software Updates.
    For more details about the availability of BlackBerry 10.1, check out Inside BlackBerry’s post on BlackBerry 10 Software Updates.
    VIA | helpblog.blackberry.com
    http://helpblog.blackberry.com/2013/10/how-to-switch-between-messages-in-the-blackberry-hub/
    Please thank those who help you by clicking the button.
    If your issue has been solved, please resolve it by marking "Accept as Solution"

    I would set up a variable before you get to that node, lets call it $EmpID and assign to it the value of the prompt you want to play lets say 12345 which would be the library promptID. It will then play prompt, get digits, and once you validate if it goes through the expression that flags it as invalid, in that node re-declare the variable, but this time give it the value of the new prompt you want to play, then sent it back to the node which will then play the new prompt and collect the digits.

  • Verifying a Digital Signature using message digest

    Hi, i am new to java.
    I have a Digitally signed document, i wanna verify this signed document against the original one.
    i got the idea from this link:
    http://help.sap.com/saphelp_45b/helpdata/en/8d/517619da7d11d1a5ab0000e835363f/content.htm
    i signed a pdf doc with my SmartCard. the third party signing tool passed me the PKCS7 digital signature and i stored it in database. the problem arose when i retrieved this digital signature from DB and verified against the original doc using the message digest method. the base64 result strings are always not equal.
    I am sure about this:
    -the retrieved digital signature was GOOD.
    -the original doc was GOOD.
    but why i can't get the same 2 message digests? can somebody please help?
    below is part of my code:
    while (rsetDs.next())
         InputStream DSName2 = rsetDs.getBinaryStream(1);
         ByteArrayOutputStream byteStream = new ByteArrayOutputStream();
         byte[] myByte = Base64.decode(byteStream.toString());
         ByteArrayInputStream newStream = new ByteArrayInputStream(myByte);
         CertificateFactory cf = CertificateFactory.getInstance("X.509");
         Collection c = cf.generateCertificates(newStream2);
         Iterator i = c.iterator();
         while (i.hasNext())
              Certificate cert = (Certificate)i.next();
              X509Certificate cert1 = (X509Certificate)cert;
              try
                   java.security.MessageDigest md = java.security.MessageDigest.getInstance("MD5");
                   /*=============DB MD (BEGIN)==================*/
                   byte [] pubkeyByte = cert1.getPublicKey().getEncoded();
                   md.update(myByte);
                   md.update(pubkeyByte);
                   byte[] raw = md.digest();
                   String db_md = Base64.encode(raw);
                   /*============DB MD (end)============*/
                   /*=============PDF MD (BEGIN)==================*/
                   DataInputStream m_disFile = new DataInputStream(new FileInputStream("C:\\" + "original_doc.pdf"));
                   int m_iNum = m_disFile.available();
                   byte[] msgBytes = new byte[m_iNum];
                   m_iNum = m_disFile.read(msgBytes, 0, m_iNum);
                   md.update(msgBytes);
                   byte[] digestMd = md.digest();
                   md.reset();
                   String pdf_md = Base64.encode(digestMd);
                   /*=============PDF MD (END)==================*/
    ..thanks in advance.

    PKCS#7 SignedData objects are far more complex then it looks like you are taking them. First the PKCS#7 SignedData object will contain the OID for the message digest algorithm used and for the encryption algorithm used. From the looks of your code you are simply assuming MD5.
    It also contains all of the data that was signed which is typically much more than just the document. It also of course contains the public keys and signatures which singed the document. In your case it will probably only have one public certificate and one signature.
    Also note that a signature is an encrypted hash. Looking at your code I do not see you use encryption at all or rather for verification decryption.
    Here is the basic process a signature takes.
    MessageDigest md = MessageDigest.getInstance(algOID);
    byte[] digest = md.digest(message.getBytes(charEncoding));
    Cipher c = Cipher.getInstance("RSA/2/PKCS1Padding");
    c.init(Cipher.ENCRYPT_MODE, priKey);
    byte[] signature = c.doFinal(digest);Note that the resulting byte array is not the message digest but the encrypted message digest. You must use the corresponding public key to decrypt the signature to get the message digest value. It is because the trusted public key can decrypt the correct message digest that we know it was encrypted by the holder of the private key. It is because the decrypted message digest value is equal to my computed message digest value that we know the document has not be altered...
    Now PKCS#7 SignedData does not take the message digest of the document, in your case your PDF. It creates a message digest on an ASN.1 object which includes the bytes of your document plus a bunch of meta data.
    For more info on the exact format of a PKCS#7 signature file check out
    http://www.rsasecurity.com/rsalabs/pkcs/pkcs-7/index.html
    Look through this doucment for SignedData as a starting place and follow through all of the sub objects that make up a SignedData object. This will give you an idea of what is involved.

  • Message Digest Error (plz help)

    Hi,
    I am from India and working on Gemplus Java cards (211 PK) . and using the Gemplus RAD III Kit 3.2
    For Java card Application development (key pair generation and Message DIgest) , I am using the Javacard.security package and MessageDigest class for creating the message digest.
    But I am facing some problems.
    So, I am attaching the .java File. The source Code gets compiled properly but raises a Null Pointer Exception at RunTime (See attached text file) .
    Could you please tell me what the error is?
    Being in India, do these cards support Limited Cryptography or is Message Digesting allowed.
    My .java file (i.e. My source code)
    import java.io.*;
    import java.io.FileInputStream;
    import javacard.security.MessageDigest;
    import javacard.security.CryptoException;
    class MsgDigest
    public static void main(String args[])
         FileInputStream fIn; // File Input stream
         FileOutputStream fOut; // File output stream
         boolean          resRead; //result of "Is file readable?"
         int           resCompare; //resultof comparing 2 file's equality
         String           fNm,temp; //open file name,temparary variable for other testing
         long           fLength; //open file length
         int     resReadFile;// result of reading the file through read()
         int               fileLength=0; //file Length in int
    int          cnt=0;
    try
    //open the file on which message digest is to be performed
              fNm=new String("c:\\sample.txt");
              File fSamp=new File(fNm);
    //checking it for reading operation
              resRead=fSamp.canRead();
              System.out.println(resRead);
    //creating input stream of file and writting it into another file output.txt
    fIn=new FileInputStream(fNm);
    fLength=fNm.length();
         System.out.println("in long file size is : " fLength"\n");
         fOut= new FileOutputStream("C:\\output.txt");
    //reading the file and calculating the length
    do
                   resReadFile=fIn.read();
                   if (resReadFile!=-1)
                   fOut.write(resReadFile);
                   fileLength=fileLength+1;
         }while (resReadFile!=-1);
         fIn.close();
    //reading the file and storing it in a byte array
    fIn=new FileInputStream(fNm);
         System.out.println("in int File size is : "+fileLength+ "\n");
         byte readData[]=new byte[fileLength]; //data in file stored in this byte array
         int i;
         i=fIn.read(readData);
         System.out.println("bytes in readData : "+i+"\n");
    //creating message digest object and update message Digest to work on our message : readData
    byte midData[]=new byte[fileLength];
    MessageDigest md;
    try
         md = MessageDigest.getInstance(MessageDigest.ALG_SHA,false);
    catch(Exception e1)
         e1.printStackTrace();
    //md.update(readData,(short)0,(short)(readData.length));
    //md.doFinal(readData,(short)0,(short)(readData.length),midData,(short)0);
    }//try
    catch (CryptoException e)
              System.err.println("ERROR : "+e);
              System.exit(1);
    catch (FileNotFoundException e)
              System.err.println("ERROR : "+e);
              System.exit(1);
    catch (ArrayIndexOutOfBoundsException e)
              System.err.println("ERROR : "+e);
              System.exit(1);
    catch (Exception e)
              System.err.println("ERROR : "+e);
              System.exit(1);
    }//main
    }//class
    Getting THIS error
    true
    in long file size is : 13
    in int File size is : 241
    bytes in readData : 241
    javacard.security.CryptoException
    at javacard.security.CryptoException.throwIt(Unknown Source)
    at javacard.security.MessageDigest.getInstance(Unknown Source)
    at MsgDigest.main(MsgDigest.java, Compiled Code)
    Press any key to continue...

    The Java card specification says that when calling MessageDigest.getInstance, the exception CryptoException will be thrown if the alg. is not supported or when the shared access mode is not supported. Can you pls check if Gemplus RAD III Kit 3.2 supports SHA-1 alg. ?
    Also, the code that you have written is not compliant with Java Card spec. Because in Java card applets, we cannot use java.io.FileInputStream, etc., main method , etc. If I guess, you may be compiling the java file to class file by linking it to javacard package and executing class file using java interpreter like we do normally for executing a java application. This is not the way that Java applets are written, please go through the Java card spec for developing and compiling java applets.

  • Is it possible to set delivery retry time-interval between messages?

    Hello!
              I use Wls 8.1.5 and would love to be able to set delivery retry time-interval between message.
              The complete situtaion looks like this.
              We got one queue (queue_A) that retrives alot of messages.
              At queue_A we got a BMT-MDB that consumes all messages (one by one).
              The BMT-MDB is supposed to forward the messages to an other queue (queue_B). (We also do some other things as well)
              But if we can not forward the message to queue_B because of some Exception is thrown, the transaction is Rolledback exactly as we want.
              But when this happens (for eg the server where queue_b resides is down) our BMT-MDB keeps trying to post the message like an enegizer-bunny. It would feel better if it waited for some seconds before it try again.
              We have tried to set play around with RedeliveryDelayOverride="5000" at the queue_B. But if we set to anything bigger then RedeliveryDelayOverride="-1", then other messages is passing throug and also put into "pending". This ended up in out of memory when the load was big.
              So what we would love to be able is to have all messages in a FIFO-row at the queue_A. And if queue_B is out of order then keep on trying consume the firts messagesd for every 5 sec.
              So if any one know if and how to configure a Wls 8.1.5 please let us know!
              Best regards
              Fredrik

    Hello Again Fredrik!
              Later versions have several more options, but here are some that might work on 8.1:
              (A) A good bit of coding: Write code that undeploys the MDB on certain failures, and redeploys it sometime later.
              (B) A small amount of coding: On a failure, simply force a tx rollback, then put a Thread.currentThread.sleep() in the MDB application itself. (Just make sure the MDB is setup with a dedicated thread pool to avoid using up default threads.)
              (C) Requires no coding: Have the MDB forward the message to a local destination rather than the remote destination (so the forward always succeeds), then use the messaging bridge to forward the message onward. The messaging bridge automatically does a periodic retry on failure, and doesn't need to use redelivery delays.
              (D) Requires no coding: Raise a support case with BEA - I personally consider the fact that redelivery delay messages fail to page out likely indicates that there's a bug in 8.1. (Upgrade to 9.x quite likely doesn't have this problem.)
              Hope this helps,
              Tom

  • Newbie question about message digests

    I understand that a digest is a one-way process, that a message digest is a "fingerprint" of the original message but that there is no way to recover the original (I think Ronald Rivest's document says it is "conjectured to be computationally infeasible" to do so). So far so good.
    But I also read this about digest algorithms: "it is virtually impossible to create a message with a predetermined digest." ( http://tinyurl.com/39thq )
    What does this mean, given that a particular message will always hash to the same digest?
    Thanks for any guidance.
    -javahombre

    Great, now I see! Thanks!
    This sounds especially true now that I see the explanation. For example, I notice that even different case for the "same" string matters: "test" vs. "Test" comes out to different hash.
    As for picking completely different strings that hash to the same digest, that seems almost inconceivable.
    Thanks again,
    javahombre

  • Message digest algorithm in Archive Link

    Good Morning.
    We are building interface with the SAP Content Server. We require some help from you on the following items.
    Referring to the SAP Content Server HTTP Interface API 4.5/4.6,
    The library for checking signatures can be obtained from SAP AG. Because the standard format PKCS#7 was used for the signature, other products can also be used for decoding.
    From page 8, can you lets us know where we can get them.
    We would also want to know what is the message digest algorithm in Archive Link.

    Hi,
    SAP content server is using DSS for signing URL parameters. The NIST FIPS-180-3 specification defines which hash functions can be used in DSS. My guess is that it's using SHA1. I doubt that it's using newer version like SHA-256.
    Cheers

  • Message Digest MD5 Problem

    My application downloads a zip file from given URL and also gets message digest (MD5) for the file.
    Then, it creates another message digest and compares them.
    I have tried files from tomcat.apache.org
    The results are below:
    apache-tomcat-6.0.20-deployer.zip (downloaded)
    1b3287c53a12e935a8c965b15af39f07 --> code from the website
    1b3287c53a12e935a8c965b15af39f7 --> code by the application
    apache-tomcat-6.0.20.zip (downloaded)
    714b973e98d47ec2df6d5e1486019f22 --> code from the website
    714b973e98d47ec2df6d5e148619f22 --> code by the application
    I could not understand why 0's are missing in my code. Should I try another files except from Apache?

    try{
                 MessageDigest algo = MessageDigest.getInstance("MD5");
                 algo.reset();
                 algo.update(data);
                 byte messageDigest[] = algo.digest();
                 StringBuffer hexString = new StringBuffer();
                 for (int i=0;i<messageDigest.length;i++) {
                      hexString.append(Integer.toHexString(0xFF & messageDigest));
         System.out.println(hexString.toString());
    catch(NoSuchAlgorithmException e) {
         e.printStackTrace();
    }I have got the content of the file in a byte array --> data.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • Difference between message type and idoc type

    Hi
    difference between message type and idoc type
    Regards
    Rama

    Hi,
    Message Type:
    A message type represents the application message exchanged between R/3 systems and R/3 and an external system. A message type characterises the data sent across systems and relates to the structure of the data called an IDOC type.
    Diff. with IDOC type
    An IDoc type specifies the structure of the data.
    A message type specifies the meaning of the data
    Diff. b/w IDOC type and IDOC
    An IDoc type is the definition of a specific data structure.
    An IDoc is an actual instance of data based on an IDoc type. Therefore, there can be many IDocs created from a single IDoc type.
    Example:
    MATMAS is the message type and MATMAS05 is IDoc type for Material Master.
    Thanks,
    Shankar

  • Need help about the SHA Message Digest ? & what is use of Message Diagest ?

    need help about the SHA Message Digest ? & what is use of Message Diagest ?
    1>i have one program of making message digest
    2>which requires two files name
    3>one for input like txt
    4> second is out put file of message digest
    can any one tell what is the use of second generated file .

    MessageDigest md = MessageDigest.getInstance("SHA");
    FileInputStream fis = new FileInputStream(args[0]);
    byte[] b = new byte[1024];
    int readed = -1;
    while((readed = fis.read(b)) > 0)
         md.update(b, 0, readed);
    fis.close();
    FileOutputStream fos = new FileOutputStream(args[1]);
    byte[] d = md.digest();
    StringBuffer sb = new StringBuffer();
    for(int i = 0; i < d.length; i++) {
         String str = Integer.toHexString(d[i] & 0xff);
         sb.append(str.length() < 2 ? "0" + str : str);
    fos.write(sb.toString().getBytes());
    fos.close();

  • Urgent online repair message

    Why do I keep getting the urgent online repair message. What can I do about it.

    Hi there is already tons of topic about that.
    It's SCAM, please block and report.
    Devise Shadok : S'il n'y a pas de solution c'est qu'il n'y a pas de problème...
    Mon profil

  • OSB 11g JMS minimum Delay Between Messages

    Hi ,
    We are consuming messages asynchronously from Weblogic JMS Queue using OSB BS. We want to add time delay between messages consume. It is kind of sequential messages, one after another, with time delay 1 sec. How to achieve this ?
    Thanks,
    Sri

    ps1(jms)->ps2(sb)->ps3(sb)->ps4(sb)From my understanding, the code for ps2, ps3 and ps4 should also get executed in the thread in which ps1 is executed. So if you put a constraint on the first then you are effectively putting a constraint on the entire flow.
    The number 16 for jms comes from weblogic mdb container's internal. I believe it is fixed and cant change . Doc says
    Default work manager or unconstrained work manager : Thread varies due to self-tuning, up to Min(max-beans-in-free-pool,16) If you are on non polling transports like http, then the max thread constraint available should be restricted only by the size of the self tuning execute thread pool. All requests coming for the proxy will be placed in the execute queue which will be further serviced by a thread in the execute thread pool.
    Refer to weblogic tuning docs on fine tuning default exceute queue and threads.

  • How to decrypt to get the message digest?

    Ok, I'm aware that, message digest, is a one-way hash algorithm. From what I gathered, we can decrypt then use the MessageDigest method, IsEqual to compared the hash value to ensure they are the same right?
    But my problem is, right now, I has the code to encrypt and digitally signed on a xml.
    But no one has used it before to decrypt. So i need to find out how.
    Below is the code to generate the signed XML.
    Can anyone tell me how to decrypt it?
    Thanks...
        public boolean generateSignXmlDocument(String xmlDocPath, String newDocPath, KeyStore keystore, String alias, String password)
            boolean status = false;
            try
                DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
                dbf.setNamespaceAware(true);
                DocumentBuilder builder = dbf.newDocumentBuilder();
                File f = new File(xmlDocPath);
                Document doc = builder.parse(new FileInputStream(f));
                KeyPair kp = getPrivateKey(keystore, alias, password);
                DOMSignContext dsc = new DOMSignContext(kp.getPrivate(), doc.getDocumentElement());
                String providerName = System.getProperty("jsr105Provider", "org.jcp.xml.dsig.internal.dom.XMLDSigRI");
                log.info("Creating xml sign.....");
                log.debug("Provider Name " + providerName);
                XMLSignatureFactory fac = XMLSignatureFactory.getInstance("DOM", (Provider)Class.forName(providerName).newInstance());
                javax.xml.crypto.dsig.Reference ref = fac.newReference("", fac.newDigestMethod("http://www.w3.org/2000/09/xmldsig#sha1", null), Collections.singletonList(fac.newTransform("http://www.w3.org/2000/09/xmldsig#enveloped-signature", null)), null, null);
                javax.xml.crypto.dsig.SignedInfo si = fac.newSignedInfo(fac.newCanonicalizationMethod("http://www.w3.org/TR/2001/REC-xml-c14n-20010315#WithComments", null), fac.newSignatureMethod("http://www.w3.org/2000/09/xmldsig#rsa-sha1", null), Collections.singletonList(ref));
                KeyInfoFactory kif = fac.getKeyInfoFactory();
                javax.xml.crypto.dsig.keyinfo.KeyValue kv = kif.newKeyValue(kp.getPublic());
                javax.xml.crypto.dsig.keyinfo.KeyInfo ki = kif.newKeyInfo(Collections.singletonList(kv));
                XMLSignature signature = fac.newXMLSignature(si, ki);
                signature.sign(dsc);
                java.io.OutputStream os = new FileOutputStream(newDocPath);
                TransformerFactory tf = TransformerFactory.newInstance();
                Transformer trans = tf.newTransformer();
                trans.transform(new DOMSource(doc), new StreamResult(os));
                status = true;
            catch(Exception e)
                log.error(e);
            return status;
        }

    Kyle Treece wrote:
    It says that both IMAP and POP are enabled in my settings.
    what settings ? in gmail webmail interface? I'm talking about how your gmail account is configured in Mail on your computer. It's configured for POP. you need to delete it from Mail and then create a new account in Mail and make it IMAP. do not use automated account setup which Mail will offer to do. that will make the account POP again. enter all server info and account type by hand.
    see this link for details
    http://mail.google.com/support/bin/answer.py?answer=81379
    If I turn POP completely off, will it kick all the messages out of my iPhone?
    as I said, this is not about turning something on or off in webmail gmail. you have to configure your email client Mail correctly. it will have no effect on your iphone.

Maybe you are looking for

  • "A Fix"

    Well, after trying to figure out what was going on with iTunes not opening at all. It turns out that by default for some reason Windows Xp Firewall disables it from opening it. iTunes however is acting like a server for the fact that you exchange dat

  • Provisoning users from OIM to OID having org other than xellerate users

    Hi, when i provision a user belonging to default Xellerate Users organization in OIM to OID, it is done. what changes do i need to do if a want to provision a user in any other organization say 'MyCompany' to OID user (it gives naming exception error

  • LabVIEW 8.0:: How to get the group name of a user logged to a NI Security Domain?

    Hello all, I am using LabVIEW 8.0 PDS. I created a new local domain called "MyDomain" in the "NI Domain Account Manager" . I added a new User called "MyUser" and a new group called "Maintenance". I set "MyUser" to be a member of the "Maintenance" gro

  • File Browse Item translation

    Hello all, I would like to ask if is possible to translate the "Browse..." button of File Browse item. For me it seems that the button cannot be translated to a different language. I have tried to export the XLIFF and there is no string like "Browse.

  • Loading data in the order in which it is inserted in the file

    Hi All, I am trying to load data from a flat file in database table using sql Loader. The loader loads all the data successfully without giving any error. The problem is the data is not inserted as it is in the file i.e. Line 1 in datafile is inserte