I have seen this position in Dvoretsky's endgame manual. According to his analysis, white is winning after Ke7, Kc3 Kd6, a4!, eventually getting the pawns to b5 and f5, king to d4 and breaking through with e4 at the right moment.
Update. Actually, I have checked it, and in the book the position is already after Ke7, Kc3 Kd6. Here white has to play a4 to stop b5. Importantly, earlier b5 does not work for black either, because white has Kc3-b4 winning the b5 pawn.
Update 2.
As @Evargalo correctly pointed out, the key to this position is the pawn ending arising after 1. ... Ke7 2. Kc3 Kd6 3. a4 g5 4. Kd4 Bf7 5. Bf3 Be6 6. f5 Bf7 7. b4 Be8 8. b5 Bf7 9. Bd1 Be8 10. Bb3 Bf7 11. e4 bg8 12. Ba2 Bf7 (probably a time-winning pass) 13. Bxd5 Bxd5 14. exd5 Kc7.
[FEN "8/1pk5/1p3p1p/1P1P1Pp1/P2K2P1/7P/8/8 w - - 0 1"]
Here the game continued: 15. Kc3 (aiming at Kb4 and a5 to enable Kc5 and d6) Kd6 16. Kc4 (triangulation). Now:
(1) 16. ... Ke5 17. a5 bxa5 18. Kc5 a4 19. d6 b6+ 20. Kc6 a3 21. d7 a2 22. d8Q a1Q 23. Qd6+ Ke4 24. Kxb6 and apparently white is winning thanks to the b-pawn. White gets his queen to c6, king to c8 and push the pawn. Black resigned after 10 more moves;
(2) 16. ... Kd7 17. Kb4 Kd6 18. a5 Kxd5 19. a6 bxa6 20. bxa6 Kc6 21. Ka4 b5+ 22. Ka5;
(3) 16. ... Kd7 17. Kb4 Kd6 18. a5 bxa5+ 19. Kxa5 Kxd5 20. Kb6 Kc4 21. Kxb7 Kxb5 22. Kc7 and the pawn endgame is winning.
Actually, at first I thought it is an example of impressive calculation from the white player, but then maybe, it all can be found by elimination. You see that getting your pawn to b5 is your best bet to win the bishop endgame, then you have to go to the pawn endgame because otherwise it is a fortress, and then it is a draw unless you go for the queen endgame where the b-pawn is your only chance. So maybe it is an example of how avoid unnecessary calculations.