Bug 356 - Git public key authentication does not accept valid private key passphrase
Summary: Git public key authentication does not accept valid private key passphrase
Alias: None
Product: Xamarin Studio
Classification: Desktop
Component: Version Control (show other bugs)
Version: 2.8.6
Hardware: Macintosh Mac OS
: --- normal
Target Milestone: ---
Assignee: Alan McGovern
Depends on:
Blocks: 3241
  Show dependency tree
Reported: 2011-08-21 19:34 UTC by Wayne Carson
Modified: 2012-03-29 06:43 UTC (History)
3 users (show)

See Also:
Is this bug a regression?: ---
Last known good build:


Description Wayne Carson 2011-08-21 19:34:48 UTC
When using Git version control with public key authentication (as is required by Github), the valid private key passphrase is not accepted.  

Steps to reproduce:
1) Working with git project which has github as the remote (origin) repo.
2) Try to "Push Changes..." to remote repo (Github)
3) While connecting to the remote repo, the "Git Credentials" popup windows is displayed, and is correctly prompting for the passphrase for the relevant private key: "Passphrase for /Users/Me/.ssh/id_rsa".
4) Upon entering the correct passphrase, and clicking "OK", the "Git Credentials" popup is redisplayed and is again prompting for the passphrase.

It will not allow me past the passphrase prompt, even when using the same passphrase that works from the command-line and other Git related programs such as "Tower".

Note: This *may* be a duplicate to Bug ID #330 which describes MonoDevelop requiring password for Git push/fetch; however that seems to be specific to password authentication, while this bug is related to public key authentication.

Bug #330: http://bugzilla.xamarin.com/show_bug.cgi?id=330
Comment 1 Alan McGovern 2012-02-14 07:29:04 UTC
Does this bug still exist? If so, would you be able to generate a new ssh key which you can share with me which will trigger the bug? My own SSH key works just fine with current builds of monodevelop, so either the bug is fixed or there is some peculiarity with your key/password.
Comment 4 Wayne Carson 2012-02-23 20:04:29 UTC
Some additional information on this which might be useful to you...

I experienced the exact same problem (passphrase was not accepted) on Eclipse using the EGit plugin. Based on the Egit bug report below, I fixed the issue on Eclipse by using a newer version of the SSH library used by EGit (JSch in this case).


Since I'm experiencing the same symptoms on MonoDevelop with the same key, maybe the issue is with the SSH library that MonoDevelop uses not being able to handle the encryption being used in my key?
Comment 5 Alan McGovern 2012-02-28 05:07:15 UTC
Thanks for the test key, working on this now
Comment 7 Alan McGovern 2012-03-05 18:55:10 UTC
I finally figured out the issue, we had a hardcoded value in the RSA code which meant we were incorrectly signing data. I've fixed the issue and am now getting the patch reviewed and will try to get it backported so it is included in Mono 2.8.8 final.
Comment 8 Orlin Todorov 2012-03-27 06:12:56 UTC
When is 2.8.8 final expected?  I have the same problem.  Any workarounds?
Comment 9 Alan McGovern 2012-03-27 06:24:04 UTC
Assuming you are hitting this issue, you can simply upgrade to the latest MonoDevelop beta. These have contained the fix for several releases. The latest release can be found at: http://monodevelop.com/Download . Unfortunately there are no workarounds other than this.
Comment 10 Orlin Todorov 2012-03-29 06:43:57 UTC
Thank you - the latest Beta worked.

Note You need to log in before you can comment on or make changes to this bug.